景德镇陶瓷学院期末考试C语言选择题.docx
- 文档编号:7318029
- 上传时间:2023-01-22
- 格式:DOCX
- 页数:20
- 大小:23.82KB
景德镇陶瓷学院期末考试C语言选择题.docx
《景德镇陶瓷学院期末考试C语言选择题.docx》由会员分享,可在线阅读,更多相关《景德镇陶瓷学院期末考试C语言选择题.docx(20页珍藏版)》请在冰豆网上搜索。
景德镇陶瓷学院期末考试C语言选择题
1、以下叙述中正确的是
A)C程序中的注释只能出现在程序的开始位置和语句的后面
B)C程序书写格式严格,要求一行内只能写一个语句
C)C程序书写格式自由,一个语句可以写在多行上
D)用C语言编写的程序只能放在一个程序文件中
2、以下叙述中正确的是..
A)C程序的基本组成单位是语句
B)C程序中的每一行只能写一条语句
C)简单C语句必须以分号结束
D)C语句必须在一行内写完
3、计算机能直接执行的程序是.......................................()
A)源程序 B)目标程序
C)汇编程序 D)可执行程序
4、以下C语言用户标识符中,不合法的是..................................()
A)_1 B)AaBc
C)a_bD)a-b
5.以下选项中不合法的标识符是........................................()
A)print B)FOR C)&a D)_00
6、以下选项中合法的标识符是..........................()
A)1_1B)1-1
C)_11D)1__
7以下选项中,能用作数据常量的是.................................()
A)o115B)0118C)1.5e1.5D)115L
8.以下选项中不能作为C语言合法常量的是....................................()
A)'cd' B)0.1e+6 C)"\a" D)'\011'
9.C源程序中不能表示的数制是.....................................................()
A)二进制 B)八进制
C)十进制 D)十六进制
10.以下选项中正确的定义语句是...............................................()
A)double a;b; B)double a=b=7;C)double a=7,b=7;D)double,a,b;
11.以下不能正确表示代数式2ab/cd的C语言表达式是..............................()
A)2*a*b/c/d B)a*b/c/d*2 C)a/c/d*b*2 D)2*a*b/c*d
12.设有定义:
intx=2;,以下表达式中,值不为6的是.............................()
A)x*=x+1B)x++,2*xC)x*=(1+x)D)2*x,x+=2
13、有以下程序,其中k的初值为八进制数
#include
main()
{intk=011;
printf("%d\n",k++);}
程序运行后的输出结果是............................()
A)12 B)11C)10 D)9
14.设变量a和b已正确定义并赋初值。
请写出a-=a+b等价的赋值表达式【】....................a=-b
15.若有表达式(w)?
(--x):
(++y),则其中与w等价的表达式是.................()
A)w==1 B)w==0 C)w!
=1 D)w!
=0
16.表达式(int)((double)(5/2)+2.5)的值是【】
17、若有定义:
doublea=22;inti=0,k=18;,则不符合C语言规定的赋值语句是........................()
A)a=a++,i++; B)i=(a+k)<=(i+k); C)i=a%11;D)i=!
a;
18.若函数中有定义语句:
intk;,则...................................()
A)系统将自动给k赋初值0B)这时k中的值无定义
C)系统将自动给k赋初值-1D)这时k中无任何值
19.程序段:
intx=12;doubley=3.141593;printf("%d%8.6f",x,y);的输出结果是
A)123.141593B)123.141593C)12,3.141593D)123.1415930
20.若整形变量a和b中的值分别为7和9,要求按以下格式输出a和b的值:
a=7b=9请完成输出语句:
printf("【7】",a,b);a=%d\nb=%d\n
21、有以下程序
#include
main()
{chara,b,c,d;
scanf(“%c%c”,&a,&b);
c=getchar();d=getchar();
printf(“%c%c%c%c\n”,a,b,c,d);
}
当执行程序时,按下列方式输入数据(从第1列开始,
回车也是一个字符)
12
34
则输出结果是..................................................()
A)1234 B)12
C)123D)1234
22.若变量已正确定义为int型,要通过语句scanf("%d,%d,%d",&a,&b,&c);给a赋值1、
给b赋值2、给c赋值3,以下输入形式中错误的是(μ代表一个空格符)..............()
A)μμμ1,2,3<回车> B)1μ2μ3<回车>
C)1,μμμ2,μμμ3<回车> D)1,2,3<回车>
23.有以下程序
#include
main()
{ int a1,a2; char c1,c2;
scanf("%d%c%d%c",&a1,&c1,&a2,&c2);
printf("%d,%c,%d,%c",a1,c1,a2,c2);
}
若通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,
程序输出结果是:
12,a,34,b则正确的输入格式是(以下_代表空格,
A)12a34b
24、若a是数值类型,则逻辑表达式(a==1)||(a!
=1)的值是..........()
A)1 B)0 C)2D)不知道a的值,不能确定
25、有如下嵌套的if语句
if(a
if(a elsek=c; else if(b elsek=c; 以下选项中与上述if语句等价的语句是.............................() A)k=(a<b)? a: b;k=(b<c)? b: c; B)k=(a<b)? ((b<c)? a: b): ((b>c)? b: c); C)k=(a<b)? ((a<c)? a: c): ((b<c)? b: c); D)k=(a<b)? a: b;k=(a<c)? a: c; 26、以下选项中与if(a==1)a=b;elsea++;语句功能不同的switch语句是....() A)switch(a) {case1: a=b;break; default: a++; } B)switch(a==1) {case0: a=b;break; case1: a++; } C)switch(a) {default: a++;break; case1: a=b; } D)switch(a==1) {case1: a=b;break; case0: a++;} 27.以下是if语句的基本形式: if(表达式) 语句 其中"表达式".............................() A)必须是逻辑表达式B)必须是关系表达式C)必须是逻辑表达式或关系表达式D)可以是任意合法的表达式 28.有以下程序 #include main() { int x; scanf("%d",&x); if(x<=3) ; else if(x! =10) printf("%d\n",x); } 28.程序运行时,输入的值在哪个范围才会有输出结果.......................() A)不等于10的整数B)大于3且不等于10的整数 C)大于3或等于10的整数D)小于3的整数 29.有以下程序 #include main() { int a=1,b=2,c=3,d=0; if (a==1 && b++==2) if (b! =2||c--! =3) printf("%d,%d,%d\n",a,b,c); else printf("%d,%d,%d\n",a,b,c); else printf("%d,%d,%d\n",a,b,c);} 程序运行后输出结果是..........................................() A)1,2,3B)1,3,2 C)1,3,3D)3,2,1 30..有以下程序 #include main() { char c1,c2; scanf("%c",&c1); while(c1<65||c1>90) scanf("%c",&c1); c2=c1+32; printf("%c,%c\n",c1,c2); } 程序运行输入65回车后,能否输出结果,结束运行(请回答能或不能)【不能】 31.有以下程序 #include main() {intn=2,k=0; while(k++&&n++>2); printf(“%d%d\n”,k,n); } 程序运行后的输出结果是.() A)02B)13C)57D)12 32.以下程序运行后的输出结果是5 #include main() {inta=1,b=7; do{ b=b/2;a+=b; }while(b>1); printf(“%d\n”,a);} 33.有以下程序 #include(stdio.h) main() {inta[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0; for(i=0;i<5;i++)s=s+a[b[i]]); printf("%d\n",s); } 程序运行后的输出结果是 .() A)6B)10 C)11D)15 34.设变量已正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段是 .() A)n=0;while((ch=getchar())! ='\n')n++;B)n=0;while(getchar()! ='\n')n++; C)for(n=0;getchar()! ='\n';n++);D)n=0;for(ch=getchar();ch! ='\n';n++); 35.有以下程序 #include(stdio.h> main() {inta=1;b=2; for(;a<8;a++){b+=a;a+=2;} printf("%d,%d\n",a,b); } 程序运行后的输出结果是.() A)9,18 B)8,11 C)7,11 D)10,14 36.以下程序段中的变量已正确定义 for(i=0;i<4;i++,j++) for(k=1;k<3;k++); printf("*"); 程序段的输出结果是.() A)********B)****C)**D)* 37.有以下程序 #include<stdio.h> main() {inti,j,m=1; for(i=1;i<3;i++) {for(j=3;j>0;j--) {if(i*j)>3)break; m*=i*j; } } printf("m=%d\n",m); } 程序运行后的输出结果是 .() A)m=6 B)m=2 C)m=4 D)m=5 38.有以下程序 #include main() {intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1; for(i=0;i<3;i++) for(j=i;j<=i;j++)t+=b[i][b[j][i]]; printf("%d\n",t); } 程序运行后的输出结果是.() A)1 B)3 C)4 D)9 39.有以下程序 #include int f(int x,int y) { return ((y-x)*x);} main() { int a=3,b=4,c=5,d; d=f(f(a,b),f(a,c)); printf("%d\n",d); } 程序运行后的输出结果是.() A)10B)9C)8D)7 40.有以下程序 #include int fun(int x,int y) { if(x==y) return (x); else return((x+y)/2); } main() { int a=4,b=5,c=6; printf("%d\n",fun(2*a,fun(b,c)));} 程序运行后的输出结果是.() A)3B)6C)8D)12 41.设函数中有整型变量n,为保证其在未赋初值的情况下初值为0,应该选择的存储类别是.() A)autoB)registerC)staticD)auto或register 42有以下程序 #include voidfun(intp) {intd=2; p=d++;printf(“%d”,p);} main() {inta=1; fun(a);printf(“%d\n”,a);} 程序运行后的输出结果是.() A)32B)12C)21D)22 43.有以下程序 #include intf(intn); main() {inta=3,s; s=f(a);s=s+f(a);printf(“%d\n”,s); } intf(intn) {staticinta=1; n+=a++; returnn; } 程序运行以后的输出结果是.() A)7B)8C)9D)10 44.有以下程序 #include intfun() {staticintx=1; x*=2;returnx; } main() {inti,s=1, for(i=1;i<=2;i++)s=fun(); printf("%d\n",s); } 程序运行后的输出结果是 .() A)0 B)1 C)4 D)8 45.有以下程序 #include #definef(x)x*x*x main() {inta=3,s,t; s=f(a+1);t=f((a+1)); printf(“%d,%d\n’,s,t);} 程序运行后的输出结果是.() A)10,64B)10,10C)64,10D)64,64 46.有以下程序 #include #define PT 3.5 ; #define S(x) PT*x*x ; main() { int a=1,b=2 ; printf("%4.1f\n",S(a+b));} 程序运行后的输出结果是.() A)14.0B)31.5C)7.5D)程序有错无输出结果 47.有以下程序 #include #defineSUB(a)(a)-(a) main() {inta=2,b=3,c=5,d; d=SUB(a+b)*c; printf("%d\n",d); } 程序运行后的输出结果是 .() A)0 B)-12 C)-20D)10 48.以下叙述正确的是 .() A)C语言程序是由过程和函数组成的 B)C语言函数可以嵌套调用,例如: fun(fun(x)) C)C语言函数不可以单独编译 D)C语言中除了main函数,其他函数不可作为单独文件形式存在 49.若有定义语句: intm[]={5,4,3,2,1},i=4;, 则下面对m数组元素的引用错误的是.() A)m[--i] B)m[2*2] C)m[m[0]] D)m[m[i]] 50.有以下程序 #include void fun(int a,int b) { int t; t=a;a=b;b=t; } main() { int c[10]={1,2,3,4,5,6,7,8,9,0},i; for(i=0;i<10;i+=2) fun(c[i],c[i+1]); for(i=0;i<10;i++) printf("%d,",c[i]); printf("\n"); } 程序的运行结果是.() A)1,2,3,4,5,6,7,8,9,0, B)2,1,4,3,6,5,8,7,0,9, C)0,9,8,7,6,5,4,3,2,1, D)0,1,2,3,4,5,6,7,8,9, 51.有以下程序 void fun(int a[], int n) { int i,t; for(i=0;i {t=a[i];a[i]=a[n-1-i]; a[n-1-i]=t; } } main() { int k[10]={1,2,3,4,5,6,7,8,9,10},i; fun(k,5); for(i=2;i<8;i++) printf("%d",k[i]); printf("\n"); } 程序的运行结果是 .() A)345678 B)876543 C)1098765 D)321678 52.下列选项中,能正确定义数组的语句是 .() A)intnum[0..2008];B)intnum[]; C)intN=2008; intnum[N]; D)#defineN2008 intnum[N]; 53.有以下程序 main() {inta[]={2,3,5,4},i; for(i=0;i<4;i++) switch(i%2) {case0: switch(a[i]%2) {case0: a[i]++;break; case1: a[i]--; }break; case1: a[i]=0; } for(i=0;i<4;i++)printf(“%d”,a[i]);printf(“\n”); } 程序运行后的结果是: .() A)3344B)2050C)3040D)0304 54.有以下程序 #define N 4 void fun(int a[][N],int b[]) { int i; for(i=0;i } main() { int x[][N]={{1,2,3},{4},{5,6,7,8},{9,10}},y[N],i; fun(x,y); for(i=0;i printf("\n");} 程序的运行结果是 .() A)1,2,3,4, B)1,0,7,0, C)1,4,5,9, D)3,4,8,10, 5.以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能 #defineMIN-2147483647 intfindmax(intx[],intn) {inti,max; for(i=0;i {max=MIN; if(max returnmax; } 造成错误的原因是.() A)定义语句inti,max;中max未赋初值B)赋值语句max=MIN;中,不应给max赋MIN值 C)语句if(max D)赋值语句max=MIN;放错了位置 56.有以下程序 #include main() {chars[]={“012xy”};inti,n=0; for(i=0;s[i]! =0;i++) if(s[i]>=’a’&&s[i]<=’z’)n++; printf(“%d\n”,n); } 程序运行后的输出结果是.() A)0B)2C)3D)5 57.若有定义语句: char s[10]="1234567\0\0";,则strlen(s)的值是A A)7 B)8 C)9 D)10 58.有以下程序 #include main() {chara[10]=”abcd”; printf(“%d,%d\n”,strlen(a),sizeof(a)); } 程序运行后的输出结果是.() A)7,4B)4,10C)8,8D)10,10 59.设有定义: structcomplex {intreal,unreal;}data1={1,8},data2; 则以下赋值语句中错误的是 .() A)data2=data1;B)data2=(2,6); C)data2.real=data1.real; D)data2.real=data1.unreal; 60.有以下定义和语句 struct
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 景德镇 陶瓷 学院 期末考试 语言 选择题