2022年哈尔滨师范大学公共课《C语言》科目期末试卷A(有答案)
- 格式:docx
- 大小:77.23 KB
- 文档页数:16
C语言期末考试题及其答案------------------------------------------作者------------------------------------------日期语言期末考试题及其答案一选择题( 分,每小题 分)语言源程序的基本单位是()。
✌过程 函数 子程序 标识符下列程序的输出结果是()。
❍♋♓⏹☎ ✆♓⏹♦ ♋♌ ☐❒♓⏹♦♐☎✂♎⏹✂♌♌♋✆❝✌ 不确定值假设变量♋♌均为整型,表达式☎♋♌♋♌✍♋♌♋♌✆的值是()。
✌ 设♋为♓⏹♦型变量,执行下列赋值语句后,♋的取值分别是()。
♋ ♋☎♓⏹♦✆ ♋✌ 设有如下程序段,下面描述中正确的是()。
♓⏹♦ ♦♒♓●♏☎✆ ✌ 循环执行一次 循环是无限循环 循环体语句一次也不执行循环体语句执行一次以下程序的输出结果为()。
♓⏹♦ ♓❖☐♓♎ ☐❒♦☎ ✆♐☐❒☎♓♓♓✆☐❒♓⏹♦♐☎✂♍✂✉✆☐❒♓⏹♦♐☎✂♦✂✆ ❝❍♋♓⏹☎ ✆♐☐❒☎♓♓♓✆ ❒♓⏹♦♐☎ ✆ ❝✌ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉✉ ✉✉ ✉ 在 语言程序中,以下说法正确的是()。
✌函数的定义可以嵌套 但函数的调用不可以嵌套函数的定义不可以嵌套 但函数的调用可以嵌套函数的定义和函数的调用都不可以嵌套函数的定义和函数的调用都可以嵌套以下函数调用语句中含有()个实参。
♐◆⏹♍☎☎♏♏✆☎♏♏♏✆✆✌ 语法错误以下程序的输出结果为()。
2022年哈尔滨师范大学公共课《大学计算机基础》期末试卷B(有答案)一、单项选择题1、二进制数10111101等于十进制数()A.187B.189C.191D.1932、十进制数83,用二进制表示是()A.00010011B.01010011C.00111110D.011011103、微机中.一位二进制代码可表示的状态有()A.1种B.2种C.3种D.4种4、与二进制数01000011等值的十进制数是()A.19B.35C.67D.1315、对于已感染了病毒的U盘,最彻底的去除病毒的方法是()A.用酒精将U盘消毒B.放在高压锅里煮C.将感染病毒的程序删除D.对U盘进展格式化6、微型计算机中最普遍使用的字符编码是()A.国标码B.ASCII码C.BCD码D.EBCDIC码7、打印机有多种类型,下列速度快、分辨率高的打印机是()A激光式 B噴墨式 C击打式 D点阵式8、在Windows 7中,下列不正确的文件名是()A.X.Y.ZB.MyFilesC.X$Y.CD.A<B,DOC9、Windows 7系统提供了4种桌面图标的排列方式,分别是按:名称、大小,以及()A.访问频率和最近访问日期排列B.项目类型和访问频率排列C.项目类型和修改日期排列D.项目类型和创建日期排列10、Windows7的应用程序窗口中,一般不存在()A.“关闭”按钮B."最小化”按钮C.“最大化/还原”按钮D.“确定”按钮11、在已最大化的Windwos窗口中,要阅读窗口中没有显示的内容,可使用窗口的()A.窗口边框B.滚动条C.控制菜单D.还原按钮12、在Windows 7中,能弹出对话框的操作是()A. 选择了带省略号的菜单项B. 选择了带向右三角形箭头的菜单项C. 选择了颜色变灰的菜单项D. 运行了与对话框对应的应用程序13、下列不属于Microsoft Office 2000软件包的软件是()A. WordB. ExcelC. OutlookD. Adobe14、在Word的编辑过程中,要将插入点直接移到文档首部,应该按()A. End键B.Ctrl+End键C.Home 键D.Ctrl+ Home键15、在Word 2010"快速访问工具栏”上有多个按钮,其按钮的功能是()A.恢复上次操作B.返回上一级菜单C.进入下一级菜单D.撤销上次操作16、在Word中.段落通常是()A.以句号结束B.以输人回车键结束C.以空格结束D.以分节符结束17、在Word 2010文档中插入分节符,便于实现()A.修改文档B.创建文档目录C.阅读文档D.创建不同的页眉18、在Word表格的某一单元格内输入文字后,不能将插入点移到同行下一个单元格的操作是()A.单击下一个单元格B.按“Tab”键C.按“Shift+Tab”键D.按向右的箭头键19、在Word2010中,插入“艺术字”应选择“插入”功能区的()A “文本”组B “表格”组C“符号”组D“插图”组20、在Excel 2010中,下面正确的单元格地址绝对引用格式是()A.§A§5B.¥A¥5C.&A&5D. $A$521、在Excel 2010中,若E2单元格数值为59,在F3单元格输入公式:= IF(E2>=90,"优",IF(E2>=75,"良",IF(E2>=60,"合格","差"))),其F3单元格的值为()A.优B.良C.合格D.差22、在Excel 2010中,用于显示相同间隔内数据预测趋势的图表类型是()A.柱形图B.折线图C.条形图D.饼图23、在Excel 2010中,B5单元格的公式为:=AVERAGE(ŞBŞ2:B4),将其复制到D5单元格后,D5单元格的公式为()A=AVERAGE(B$2:$D4)B=AVERAGE($D$2:D4)C=AVERAGE($B$2:D4)D=AVERAGE($B$2:B4)24、向Excel 2010单元格输入数据之后,单元格中出现一串“#”符号,表示()A.单元格被隐藏B.单元格被加密C.用户输入了错误的数据D.输入的数值长度超过了单元格的宽度25、在Word 2010中,若需插入目录,应选择()A.“插入”功能区B.“页面布局”功能区C.“引用”功能区D.“审阅”功能区26、在Power Point2010中,可用鼠标拖方法改变幻灯片顺序的视图是()A阅读视图B备注页视图C幻灯片浏览视图D幻灯片放映视图27、要设置每张幻灯片进人放映屏幕的效果.应选择"幻灯片放映”菜单中的()A.幻灯片切换命令B.自定义动画命令C.动画方案命令D.动作按钮命令28、按计算机网络的交换方式分类,可以分为()A.数据交换网、电路交换网、分组交换网B.数据交换网、电路交换网、报文交换网C.报文交换网、分组交换网、数据交换网D.报文交换网、电路交换网、分组交换网29、能够实现在计算机和网络介质之间进行信息编码转换的设备是()A.网卡B.集线器C.交换机D.路由器30、下列不网络中间设备的是()A.集线器B.交换机C.路由器D.网卡二、填空题31、计算机病毒实质上是一种人为制造的入侵计算机系统的有害_____________。
2022年大庆师范学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x为无符号整数。
表达式x^(~(~0<<n)<<(p+1-n)))的作用是将x 中从第p位开始的n位求反(1变0,0变1),其他位不变。
请按表达式的求值顺序写出分解步骤,并解释含义。
__________________________________2、C语言的源程序必须通过【】和【】后,才能被计算机执行。
3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
4、运算符%两侧运算量的数据类型必须都是_______;运算符++和一一的运算量必须是_______。
5、若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值为_______,n的值为_______。
6、以下程序段通过移动指针变量m,将如图9-5所示连续动态存储单元的值,从第一个元素起依次输出到终端屏幕。
请填空。
(假设程序段中的所有变量均已正确说明。
)for(m=q;m-q<10;m++)printf("%d,",_______);printf("\n");7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。
在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。
a[0]=1;a[1]=2;swap(a,2);8、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。
例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。
请填空。
_______;a=b;b=c;_______;9、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。
2022年青海师范大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。
2、结构化程序由________、________ 、________ 3种基本结构组成。
3、C语言源程序的基本单位是________4、若x和n均是int型变量,且x和n的初值均为5,则执行表达式x+=n++后x的值为_______,n的值为_______。
5、在C语言中的实型变量分为两种类型,它们是_______和_______。
6、下面程序段的运行结果是_______。
char s[80],*sp="HELLO!";sp=strcpy(s,sp);s[0]='h';puts(sp);7、下面程序段是找出整数的所有因子。
请填空。
scanf("%d",&x);i=1;for(;_______;){if(x%i==0)printf("%3d",i);i++;}8、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。
请填空。
a+=_______;b=a-_______;a-=_______;9、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。
struct s{char data;_______}node;10、在C语言中,二维数组元素在内存中的存放顺序是_______。
二、选择题11、在C语言中,char型数据在内存中的存储形式是()。
A.补码B.反码C.原码D.ASCII码12、下面4个选项中,是非法常量的选项是( )。
13、以下不符合C语法的赋值语句是()。
A.m=(2+1,m=1);B.m=n=0;C.m=1,n=2D.n++;14、以下程序的输出结果是()。
2022年安庆师范大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、与表达式x^=y-2等价的另一书写形式是_______。
2、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
3、一个C语言源程序由若干函数组成,其中至少应含有一个________4、若有定义语句:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为_______5、若有定义语句:charc='\010';则变量c中包含的字符个数为_______。
6、定义语句int*f();int(*f)();的含义分别为_______和_______。
7、下面程序段中循环体的执行次数是_______。
a=10;b=0;do{b+=2;a-=2+b;}while(a>=0);8、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。
#include <stdio.h>int main(){int a,b;float x,y;char cl,c2;scanf("a=%d b=%d",&.a,&.b);scanf("x=%f y=%",8.x,8.y);scanf("c1=%cc2=%c”,8.cl,8.c2);printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2);return0;}9、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。
union{int n;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);10、在C语言中,二维数组元素在内存中的存放顺序是_______。
2022年东北林业大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
_______2、结构化程序由________、________ 、________ 3种基本结构组成。
3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、C语言中的标识符可分为关键字、_______和_______3类。
5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______6、请读程序段:int x=1;printf("%d\n",~x);上面程序段的输出结果是_______。
7、下面程序段的运行结果是_______。
x=2;do{printf("*");x--;)while(!x==0);8、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。
9、下面程序段的运行结果是_______。
int i=5;char c[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);10、函数process是一个可对两个整型数a和b进行计算的通用函数;函数max()可求这两个数中的较大者,函数min()可求它们中的较小者。
已有调用语句process(a,b,max);和process(a,b,min);。
请填空。
void process(_______){int result;result=(*fun)(x,y);printf("%d\n",result);}二、选择题11、以下不正确的叙述是( )。
A.在C程序中,逗号运算符的优先级最低B.在C程序中,APH和aph是两个不同的变量C.若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值12、以下表达式值为3的是( )A.16-13%10B.2+3/2C.14/3-2D.(2+6)/(12-9)13、C语言规定:在一个源程序中,main函数的位置( )A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后14、以下叙述不正确的是( )A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面15、以下对二维数组a的正确说明是()。
2022年淮南师范学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。
2、C语言的源程序必须通过【】和【】后,才能被计算机执行。
3、C语言源程序的基本单位是________4、C语言中的标识符只能由3种字符组成,它们是_______、_______和_______5、在C语言的赋值表达式中,赋值号左边必须是_______6、请读程序段:int x=1;printf("%d\n",~x);上面程序段的输出结果是_______。
7、函数swap(int x,inty)可完成对x和y值的交换。
在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。
a[o]=1;a[1]=2;swap(a[o],a[1]);8、假设M为已经声明的符号常量,则定义一个具有M×M个元素的双精度型数组a,且所有元素初值为0的形式是_______。
9、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。
10、已有一维数组a,n为元素的个数,且各元素均有值;函数void process (float*p,int n,float(*fun)(float*,int))为一个可完成下面各种计算的通用函数。
请分别写出用于以下计算的各函数中的调用语句_______、_______和_______。
(1)float arr_add(float*arr,int n)计算数组元素值之和。
(2)float odd_add(float*p,int n)计算下标为奇数的元素之和。
(3)float arr_ave(float*p,int n)计算各元素的平均值。
2022年济南大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为_______。
2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是3、C语言的源程序必须通过【】和【】后,才能被计算机执行。
4、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为_______。
5、若有定义语句:int m=5,y=2;则执行表达式y+=y-=m*=y后的y值是_______6、设x为无符号整数。
表达式x^(~(~0<<n)<<(p+1-n)))的作用是将x 中从第p位开始的n位求反(1变0,0变1),其他位不变。
请按表达式的求值顺序写出分解步骤,并解释含义。
__________________________________7、下面程序段的运行结果是_______。
x=2;do{printf("*");x--;)while(!x==0);8、下面程序段的运行结果是_______。
char ch[]="600";int a,s=0;for(a=0;ch[a]>= '0'&&ch[a]<='9';a++)s=10*s+ch[a]-'o';printf("%d",s);9、下面程序wdm的运行结果是_______。
int i,x[10]={2,3,0,3,0,2,3,2,1,3},y[4]={0};for(i=0;i<10;i++)y[x[i]]++;printf("%d\n",y[3]);10、当运行以下程序时,从键盘输入book<回车>book囗<回车>(囗表示空格),则下面程序段的运行结果是_______。
2022年贵州师范大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。
2、在C语言源程序中,一个变量代表【】。
3、一个C语言源程序由若干函数组成,其中至少应含有一个________4、在C语言中,用关键字_______定义单精度实型变量,用关键字_______定义双精度实型变量,用关键字_______定义字符型变量。
5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______6、请填空:建立如图所示存储结构所需的说明语句是_______。
建立如图所示为变量a输入数据的输入语句是_______。
建立如图所示存储结构所需的赋值语句是_______。
7、下面程序段是找出整数的所有因子。
请填空。
scanf("%d",&x);i=1;for(;_______;){if(x%i==0)printf("%3d",i);i++;}8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为_______。
9、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。
10、设有如下定义:#define SWAP(T,X,Y){T=X;X=Y;Y=T;}以下程序段将通过调用宏实现变量x和y内容的交换,请填空。
Double x=2.5,y=6.4,z;SWAP(_______);二、选择题11、若有定义语句:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是( )。
2022年哈尔滨华德学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。
struct s{char data;_______}node;2、C语言的源程序必须通过【】和【】后,才能被计算机执行。
3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
4、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为_______。
5、C语言所提供的基本数据类型包括:单精度型、双精度型、_______、_______和_______。
6、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数是_______。
7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。
函数中错误的部分是_______,改正后为_______。
void add(float a,float b){float c;c=a+b;return c;}8、下面程序段的运行结果是_______。
int i=5;char c[6]="abcd";do{c[i]=c[i-1];}while(--i>0);puts(c);9、设有以下宏定义:#define WIDTH80#define LENGTH(WIDTH+40)则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。
10、设main函数的说明为:int main(int argc,char*argv[]),且有命令行为:FILE1123<回车>,则argc的值是_______,argv[1]的值是_______。
二、选择题11、下面4个选项中,是非法常量的选项是( )。
12、若有定义语句:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是( )。
2022年东北师范大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、测试char型变量a第6位是否为1的表达式是_______(设最右位是第1位)。
2、在C语言源程序中,一个变量代表【】。
3、一个C语言源程序由若干函数组成,其中至少应含有一个________4、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。
5x7+3x6-4x5+2x1+x3-6x2+x+105、C语言所提供的基本数据类型包括:单精度型、双精度型、_______、_______和_______。
6、若有以下定义和语句,在程序中可通过指针数组p,用*(p[i]+j)等4种形式引用数组元素s[i][j],另3种形式分别是:_______、_______和_______。
(假设i、j已正确说明并赋值。
)int s[10][6],*p[10];for(i=0;i<10;i++)p[i]=s[i];7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。
函数中错误的部分是_______,改正后为_______。
void add(float a,float b){float c;c=a+b;return c;}8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为_______。
9、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。
char cl,c2;scanf("%4c%4c",&cl,8&c2);10、设有以下宏定义:#define WIDTH80#define LENGTH(WIDTH+40)则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。
2022年西藏大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
_______2、C语言的源程序必须通过【】和【】后,才能被计算机执行。
3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
4、C语言所提供的基本数据类型包括:单精度型、双精度型、_______、_______和_______。
5、把以下多项式写成只含7次乘法运算,其余皆为加、减运算的C语言表达式为_______。
5x7+3x6-4x5+2x1+x3-6x2+x+106、测试char型变量a第6位是否为1的表达式是_______(设最右位是第1位)。
7、函数swap(int x,inty)可完成对x和y值的交换。
在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。
a[o]=1;a[1]=2;swap(a[o],a[1]);8、假设M为已经声明的符号常量,则定义一个具有M×M个元素的双精度型数组a,且所有元素初值为0的形式是_______。
9、设有以下宏定义:#define WIDTH80#define LENGTH(WIDTH+40)则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。
10、下面程序段的运行结果是_______。
char*p="PDP1-0";int i,d;for(i=0;i<7;i++){d=isdigit(*(p+i));if(d!=0)printf("%cx",*(p+i));}二、选择题11、设有说明语句:int k=7,x=12;则以下能使值为3的表达式是( )。
2022年天津师范大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、测试char型变量a第6位是否为1的表达式是_______(设最右位是第1位)。
2、在C语言源程序中,一个变量代表【】。
3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、运算符%两侧运算量的数据类型必须都是_______;运算符++和一一的运算量必须是_______。
5、若有定义语句:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为_______。
6、下面程序段的运行结果是_______。
chara[]="12345",*p;int s=0;for(p=a;*p!=\0';p++)s=10*s+*p-'o';printf("%d\n",s);7、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。
请填空。
for(x=0;x<=30;x++){y=30一x;if(_______)printf("%d,%d\n",x,y);}8、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。
9、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。
例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。
请填空。
_______;a=b;b=c;_______;10、设有宏定义如下:#define MIN(x,y)(x)>(y)?(x):(y)#define T(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值为_______。
c语言试题及答案期末2022一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ->D. ::答案:D3. 在C语言中,以下哪个函数用于将浮点数转换为字符串?A. printfB. sprintfC. scanfD. gets答案:B4. 下列哪个选项是合法的C语言变量名?A. 2namesB. name2C. _name2D. name$2答案:C5. C语言中,以下哪个选项表示“不等于”?A. ==B. !=C. =D. <=答案:B6. 在C语言中,以下哪个选项是正确的注释方式?A. /* This is a comment */B. // This is a commentC. //* This is a commentD. /* This is a comment答案:A7. C语言中,以下哪个选项不是控制语句?A. ifB. switchC. forD. include答案:D8. 在C语言中,以下哪个选项表示“逻辑与”?A. &&B. ||C. !D. =答案:A9. C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str[] = {"Hello"};D. char str[] = "Hello", "World";答案:A10. 在C语言中,以下哪个选项表示“逻辑或”?A. &&B. ||C. !D. =答案:B二、填空题(每题2分,共20分)1. 在C语言中,字符常量可以用单引号括起来,例如'A'表示ASCII 码为______的字符。
2022年信阳师范学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、执行以下程序时,若从第一列开始输入数据,为使变量a=3、b=7、x=8.5、y=71.82、c1='A'、c2='a',正确的数据输入形式是_______。
#include <stdio.h>int main(){int a,b;float x,y;char cl,c2;scanf("a=%d b=%d",&.a,&.b);scanf("x=%f y=%",8.x,8.y);scanf("c1=%cc2=%c”,8.cl,8.c2);printf("a=%d,b=%d,x=%f,y=%f,cl=%c,c2=%c",a,b,x,y,cl,c2);return0;}2、C语言源程序的基本单位是________3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为_______。
5、在C语言中,用“\”开头的字符序列称为转义字符。
转义字符“\n”的功能是_______;转义字符“\r”的功能是_______。
6、把int类型变量low中的低字节及变量high中的高字节放入变量s中的表达式是_______。
7、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。
在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。
a[0]=1;a[1]=2;swap(a,2);8、设有以下宏定义:#define WIDTH80#define LENGTH(WIDTH+40)则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。
2022年哈尔滨工程大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、设x为无符号整数。
表达式x^(~(~0<<n)<<(p+1-n)))的作用是将x 中从第p位开始的n位求反(1变0,0变1),其他位不变。
请按表达式的求值顺序写出分解步骤,并解释含义。
__________________________________2、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
4、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为_______5、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-3'的值为_______。
6、设main函数的说明为:int main(int argc,char*argv[]),且有命令行为:FILE1123<回车>,则argc的值是_______,argv[1]的值是_______。
7、下面add函数的功能是求两个参数的和,并将和值返回调用函数。
函数中错误的部分是_______,改正后为_______。
void add(float a,float b){float c;c=a+b;return c;}8、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
_______9、若有以下定义和语句,为使变量c1得到字符’A',变量c2得到字符’B’,正确的输入形式是_______。
char cl,c2;scanf("%4c%4c",&cl,8&c2);10、若有定义:doublex[3][5];,则x数组中行下标的下限为_______,列下标的上限为_______。
2022年哈尔滨科学技术职业学院公共课《C语言》科目期末试卷A(有答案)一、填空题1、C语言源程序的基本单位是________2、鸡兔共有30只,脚共有90只,下面程序段是计算鸡兔各有多少只。
请填空。
for(x=0;x<=30;x++){y=30一x;if(_______)printf("%d,%d\n",x,y);}3、下面程序段中循环体的执行次数是_______。
a=10;b=0;do{b+=2;a-=2+b;}while(a>=0);4、假设变量a、b和c均为整型,以下语句借助中间变量t把a、b和c中的值进行交换,即把b中的值给a,把c中的值给b,把a中的值给c。
例如:交换前,a=10、b=20、c=30;交换后,a=20、b=30、c=10。
请填空。
_______;a=b;b=c;_______;5、设有如下结构体说明:struct ST{int a;float b;struct ST*c;doublex[3];}st1;请填空,完成以下对数组s的定义,使其每个元素均为上述结构体类型。
_______6、若采用十进制数的表示形式,则077为_______,0111为_______,0xab为_______。
7、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。
8、下面程序段的运行结果是_______。
chara[]="12345",*p;int s=0;for(p=a;*p!=\0';p++)s=10*s+*p-'o';printf("%d\n",s);9、定义语句int*f();int(*f)();的含义分别为_______和_______。
10、请读程序段:int a=1,b=2;if(a&b)printf("***\n");else printf("$$ $\n");以上程序段的输出结果是_______。
2022年哈尔滨应用职业技术学院公共课《C语言》科目期末试卷B(有答案)一、填空题1、设有一输入函数scanf("%d”,k);它不能使float类型变量k得到正确数值的原因是_______未指明变量k的地址和_______格式控制符与变量类型不匹配。
2、下面程序段中循环体的执行次数是_______。
a=10;b=0;do{b+=2;a-=2+b;}while(a>=0);3、函数swap(arr,n)可对arr数组从第1个元素到第n个元素分别进行两两元素交换。
在运行调用函数中的如下语句后,a[o]和a[1]的值分别为_______,原因是_______。
a[0]=1;a[1]=2;swap(a,2);4、C语言中的标识符可分为关键字、_______和_______3类。
5、表达式x=6应当读做_______6、若有定义floata[3][5];则a数组所含数组元素个数是_______,a数组所占的字节数是_______。
7、设有char a,b;若要通过a&b运算屏蔽掉a中的其他位,只保留第2和第8位(右起为第1位),则b的二进制数是_______。
8、C语言的源程序必须通过【】和【】后,才能被计算机执行。
9、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
10、以下程序段通过移动指针变量m,给如图9-7所示连续动态存储单元赋值。
请填空。
(假设程序段中的所有变量均已正确说明。
)for(k=0;k<10;k++,m++)scanf("%d",_______);二、选择题11、下面4个选项中,是合法转义字符的选项是( )。
A.’\"B. '\ 'C. ' \018'D. '\\o''\\ ' ' \017' '\f' '\10l''\n' '\ " ' xab' ' xlf'12、下面4个选项中,是合法整型常量的选项是( )。
2022年哈尔滨师范大学公共课《C语言》科目期末试卷A(有答案)一、填空题1、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。
2、结构化程序由________、________ 、________ 3种基本结构组成。
3、C语言源程序文件的后缀是;经过编译后,生成文件的后缀是;经过连接后,生成文件的后缀是4、若有定义语句:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为_______。
5、若a是int型变量,则执行表达式a=25/3%3后a的值为_______6、下面程序段的运行结果是_______。
chara[]="12345",*p;int s=0;for(p=a;*p!=\0';p++)s=10*s+*p-'o';printf("%d\n",s);7、下面程序段是找出整数的所有因子。
请填空。
scanf("%d",&x);i=1;for(;_______;){if(x%i==0)printf("%3d",i);i++;}8、已有定义int a;float b,x;char cl,c2;为使a=3、b=6.5、x=12.6、cl='a'、c2='A',正确的scanf函数调用语句是_______,数据输入的形式应为_______。
9、设有以下定义和语句,请在printf语句的_______中填上能够正确输出的变量及相应的格式说明。
union{int n;doublex;}num;num.n=10;num.x=10.5;printf("_______",_______);10、设有宏定义如下:#define MIN(x,y)(x)>(y)?(x):(y)#define T(x,y,r)x*r*y/4则执行以下语句后,s1的值为_______,s2的值为_______。
int a=1,b=3,c=5,s1,s2;s1=MIN(a=b,b-a);s2=T(a++,a*++b,a+b+c);二、选择题11、下面4个选项中,是正确的八进制数或十六进制数的选项是()。
12、下面4个选项中,是C语言关键字的选项是( )。
A.autoB. switchC. signedD. ifEnum typedef union structinclude continue scanf type13、若有以下定义,则正确的赋值语句是()。
int a,b;float x;A.a=1,b=2,B.b++;C.a=b=5D.b=int(x);14、以下针对scanf函数的叙述中,正确的是()。
A.输入项可以为一实型常量,如scanf("%f",3.5);B.只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D.当输入数据时,必须指明变量的地址,如scanf("%f",&f);15、有字符数组a[80]和b[80],则正确的输出形式是()A.puts(a,B.; B.printf("%s,%s",a[],b[]);C.putchar(a,B.;D.puts(A.,puts(B.;16、一个C程序的执行是从()A.本程序的main函数开始,到main函数结束B.本程序的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序的第一个函数开始,到本程序main函数结束17、与下面程序段等价的是()。
for(n=100;n<=200;n++){if(n%3==0)continue;printf("%4d",n);}A.for(n=100;(n%3)&&n<=200;n++)printf("%4d",n);B.for(n=100;(n%3)|| n<=200;n++)printf("%4d",n);C.for(n=100;n<=200;n++)if(n%3!=0)printf("%4d",n);D.for(n=100;n<=200;n++){if(n%3)printf("%4d",n);else continue;break;}18、在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,则该变量需要使用的存储类别是()A.externB.registerC.autoD.static19、设char*s="\ta\017bc”;则指针变量s指向的字符串所占的字节数()A.9B.5C.6D.720、main函数的正确说明形式是()。
A.int main(int argc,char*argv)B.int main(int abc,char*x abv)C.int main(int argc,char argv)D.int main(int c,char v[])21、折半查找法的思路是:先确定待查元素的范围,将其分成两半,然后测试位于中间点元素的值。
如果该待查元素的值大于中间点元素,就缩小待查范围,只测试中点之后的元素;反之,测试中点之前的元素,测试方法同前。
函数binary的作用是应用折半查找法从存有10个有序整数的a数组中对关键字m进行查找,若找到,返回其下标值;反之,返回-1。
请选择填空。
int binary(int a[10],int m){int low=0,high=9,mid;while(low<=high){mid=(low+high)/2;if(m<a[mid])high=mid-1;else if(m>a[mid])【】;else return(miD.;return(一1);}A.high=mid-1B.low=mid+1C.high=mid+1D.low=mid-122、下面程序的运行结果是()。
#include <stdio.h>#include <string.h>int main(){char a[80]="AB',b[80]="LMNP";inti=0;strcat(a,B.;while(a[i++]!=‘\o’)b[i]=a[i];puts(B.;return 0;}A.LBB.ABLMNPC.ABD.LBLMNP23、下面程序的功能是将字符串s中所有的字符c删除。
请选择填空()。
#include<stdio.h>int main(){char s[80];inti,j;gets(s);for(i=j=0;s[i]!= '\o';i++)if(s[i]!='c)[ ];s[j]='\o';puts(s);return 0;}A)s[j++]=s[i] B)s[++j]=s[i] C)s[j]=s[];j++ D)s[j]=s[i]24、以下程序的运行结果是( )。
#include <stdio.h>int main(){int a,b,d=241;a=d/100%9;b=(-1)8&.8&(-1);printf("%d,%d",a,B.;return0;}A.6,1B.2,1C.6,0D.2,025、下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n中的较大者,请选择填空()。
#include <stdio.h>int main(){int m=0,n=0;charc;while((c=getchar())!=\n'){if(c>='A'&&c<='Z)m++;if(c>='a′&&.c<='z)n++;printf("%d\n",m<n?【】);return 0;}A.n:mB.m:n C)m:m D)n:n三、读程序填空26、以下程序的输出结果是_______。
#include <stdio.h>int main(){int a=325;double x=3.1415926;printf("a=%+06dx=%+e\n",a,x);return 0;}27、以下程序的运行结果是_______。
#include<stdio.h>int main(){int n=0;n+=(n=10);printf("%d\n",n);return 0;}28、以下程序的运行结果是_______。
# include <stdio.h>int main(){ intx,y,z;x=3; y=3;z=x==y;printf("z=%d\n",z);return 0;}29、下面程序的功能是:根据表4-3中给定的函数关系,对输入的每个x值计算出相应的y值。
请填空。
函数关系# include<stdio.h># include<math.h>int main(){ int x,a; float y;scanf("%d%d",&x,&a);if (______) y=0;else if (______)y=sqrt(a *a-x*x);else y=x;printf("%f",y);30、下面程序的功能是输出1~100之间满足每位数的乘积大于每位数的和的数。
请填空。
#include <stdio.h>int main(){int n,k=1,s=0,m;for(n=1;n<=100;n++){k=1;s=0;_______;while(_______){k*=m%10;s+=m%10;_______;}if(k>s)printf("%d",n);}return 0;}31、下面程序的运行结果是_______。