C语言程序设计期末复习.docx
- 文档编号:7837183
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:28
- 大小:23.43KB
C语言程序设计期末复习.docx
《C语言程序设计期末复习.docx》由会员分享,可在线阅读,更多相关《C语言程序设计期末复习.docx(28页珍藏版)》请在冰豆网上搜索。
C语言程序设计期末复习
2011年C语言程序设计期末复习
一、选择题(每题3分)
1.以下说法正确的是(C)。
A)C语言程序总是从第一个定义的函数开始的。
B)在C语言程序中,要调用的函数必须在main()函数中定义。
C)C语言程序总是从main()开始执行的。
D)C语言程序中的main()函数必须放在程序的开始处。
2.在C语言中,合法的字符常量是(B)。
A)’\084’B)‘\x43’C)‘ab’D)“\0”
3.设有如下定义:
intx=10,y=3,z;
则语句:
printf(“%d\n”,z=(x%y,x/y));
的输出结果是(D)。
A)1B)0C)4D)3
4.选出合法的C语言赋值语句(B)。
A)a=b=58B)i++;C)a=58,b=58D)k=int(a+b)
5.在下列选项中,不正确的赋值语句是(D)。
A)++t;B)n1=(n2=(n3=0));C)k=j==j;D)a=b+c=1;
6.设a=5,b=6,c=7,d=8,m=2,n=2,执行“(m=a>b)&&(n=c>d)”后n的值(B)。
A)1B)2C)3D)4
7.阅读程序:
main()
{
intx=1,y=0,a=0,b=0;
switch(x)
{
case1:
switch(y)
{
case0:
a++;break;
case1:
b++;break;
}
case2;a++;b++;break;
}
printf(“a=%d,b=%d\n”,a,b);
}
上面程序的输出结果是(A)。
A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=2
8.当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为(B)。
if(a>b)x=1;
elseif(c>d)x=2;
elsex=3;
A)1B)2C)3D)6
9.设有语句“intx=1,y=1;”,则表达式(!
x||y++)的值是(B)。
A)0B)1C)2D)–1
10.下面程序段运行后的输出结果是(B)。
chars[18]=”abook!
”;
printf(“%.4s”,s);
A)abook!
B)aboC)ook!
D)格式描述不正确,没有确定输出
11.下面程序运行后的输出结果是(A)。
main()
{
intn[2],i,j,k;
for(i=0;i<2;i++)
k=2;
for(i=0;i for(j=0;j n[j]=n[i]+1; printf(“%d\n”,n[k]); } A)不确定的值B)3C)2D)1 12.C语言规定,程序中各函数之间(A)。 A)既允许直接调递归用,也允许间接递归调用B)既不允许直接调递归用,也不允许间接递归调用C)允许直接调递归用,不允许间接递归调用D)不允许直接调递归用,允许间接递归调用 13.下面程序运行后的输出结果是(C)。 intabc(intu,intv) main() { inta=24,b=16,c; c=abc(a,b); printf(“%d\n”,c); } intabc(intu,intv) { intw; while(v) { w=u%v;u=v;v=w; } returnu; } A)6B)7C)8D)9 14.定义如下变量: intn=10; 则下列循环的结果是(B)。 while(n>7) { n--; printf(“%d\n”,n); } A)10B)9C)10D)9 9898 8787 76 15.C语言规定,在一个源程序中,main()的位置(C)。 A)必须在开始。 B)必须在系统调用的库函数的后面。 C)可以任意。 D)必须在最后。 16.下面程序段的输出结果是(B)。 inti=010,j=10; Printf(“%d,%d\n”,++i,j--); A)11,10B)9,10C)010,9D)11,9 17.合法的语言字符常量是(A)。 A)‘\t’B)“A”C)65D)A 18.阅读程序: main() { inta;floatbc; scanf(“%2d%d3f%4f”,&a,&b,&c); printf(“\na=%d,b=%f,c=%f“,a,b,c); } 若运行时,从键盘输入(回车),则程序的输出的结果是(B)。 A)a=98,b=765,c=4321B)a=98,b=765.,c=4321. C)a=98,b=765.0,c=4321.0D)a=98.0,b=765.0,c=4321.0 19.若有以下语句: charc1=’b’,c2=’e’; printf(“%d,%c\n“,c2-c1,c2-‘a’+’A’); 则输出结果是(B)。 A)2,MB)3,EC)2,ED)输出结果不确定 20.若k是int型变量,且有下面程序段,其输出结果是(A)。 K=-3; if(k<=0)printf(“####”); Elseprintf(“&&&&“); A)####B)&&&&C)####&&&&D)有语法错误,无法输出。 21.下面程序的输出结果(C)。 main() { inta=-1,b=4,k; k=(a++<=0)&&(! (b--<=0)); printf(“%d%d%d\n”,k,a,b); } A)003B)012C)103D)112 22.当c的值不为0时,在下列选项中,能正确将c的值赋给变量a、b的是(C)。 A)c=b=a;B)(a=c)||(b=c);C)(a=c)&&(b=c);D)a=c=b; 23.设a、b、c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是(D)。 A)‘a’&&’b’B)a<=bC)a||b+c&&b-cD)! ((a c||1) 24.下面程序段运行后的输出结果是(D)。 chars[12]=”abook”; printf(“%d”,strlen(s)); 1.12B)8C)7D)6 25.定义如下变量和数组: inti,x[3][3]={1,2,3,4,5,6,7,8,9}; 则下列语句的输出结果是(C)。 for(i=0;i<3i++)printf(“%d”,x[i][2-i]); A)159B)147C)357D)369 26.下面程序运行后的输出结果是(B)。 f(intb[],intn) { inti,r; r=1; for(i=0;i<=n;i++) r=r*b[i]; returnr; } main() { intx,a[]={2,3,4,5,6,7,8,9}; x=f(a,3); printf(“%d”,x); } A)720B)120C)24D)6 27.在一个C源程序文件中,如果定义一个只允许本源程序文件中所有函数使用的全局变量,则该变量要使用的存储类型为(D)。 A)externB)registerC)autoD)static 28.设j为int型变量,则下面for循环语句的执行结果是(B)。 for(j=10;j>3;j--) { if(j%3)j--; --j;--j; printf(“%d‘,j); } A)63B)74C)62D)73 29.下面程序运行后的输出结果是(A)。 chars[]=”ABCD”; main() { char*p; for(p=s;p printf(“%s\n”,p); } A)ABCDB)AC)DD)ABCD BCDBCABC CDCBAB DDAA 30.选出可用于C语言用户标示符的以组一组标示符(B)。 1.voidDefineWord 2.a3_b3_123iF 3.For-abcCase 4.2aDosizeof 31.已知在ASCii代码中,字母A的序号是65,以下程序输出结果是(D)。 main() { charc1=’A’,c2=’Y’; printf(“%d,%d\n”,c1,c2); } A)输出格式非法,输出错误信息B)65,90C)A,YD)65,89 32.若已定义x和y为double类型,则表达式“x=1,y=x+3/2”的值是(C)。 A)1B)2C)2.0D)2.5 33.已知字母A的ASCII码为十进制的65,下面程序的输出结果是(A)。 main() { charch1,ch2; ch1=’A’+’5’-‘3’; ch2=’A’+’6’-‘3’; printf(“%d.%dc\n”,ch1,ch2); } A)67,DB)B,CC)C,DD)不确定的值 34.下列可作为C语言赋值语句的是(C)。 A)x=3,y=5B)a=b=6C)i--;D)y=int(x); 35.设A、B和C都是int型变量,且A=3,B=4,C=5,则下面表达式中值为0的表达式是(D)。 A)‘A’&&’B’B)A<=BC)A||B+C&&BD)! ((A C||1) 36.为表示关系x≥y≥z,应使用C语言表达式(A)。 A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)C)(x>=y>=z)D)(x>=y)&(y>=z) 37.设有语句“intx=1,y=1;”,则表达式(! x||y--)的值是(B)。 A)0B)1C)2D)–1 38.C语言中,运算对象必须是整型的运算符是(C)。 A)&&B)/C)%D)* 39.下面程序段运行后的输出结果是(C)。 chars[12]=”ab\n\\012\\\””; printf(“%d”,strlen(s)); A)14B)7C)9D)10 40.若有下列说明: inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc=’a’,d,g; 则数值为4的表达式是(D)。 A)a[g-c]B)a[4]C)a[‘d’-‘c’]D)a[‘d’-c] 41.下面程序运行后的输出结果是(D)。 f(inta) { intb=0;staticintc=3; a=c++;b++; return(a); } main() { inta=2,i,k; for(i=0;i<2;i++) k=f(a++); printf(“%d\n”,k); } A)3B)0C)5D)4 42.执行下面程序段的结果是(B)。 intx=23; do { printf(“%2d”,x--); }while(! x); A)打印出321B)打印出23C)不打印任何内容D)陷入死循环 43.执行下面语句后,变量i的值是(C)。 for(i=1;i++<4;); A)3B)4C)5D)不定 44.下面程序运行后的输出结果是(C)。 #include main() { char*p1=”abc”,*p2=”ABC”,str[50]=”xyz”; strcpy(str+2,strcat(p1,p2)); printf(“%s\n”,str); } A)xyzabcABCB)zabcABCC)xyabcABCD)yzabcABC 45.C语言中,最简单的数据类型包括(B)。 A)整型、实型、逻辑型 B)整型、实型、字符型 C)整型、字符型、逻辑型 D)整型、实型、逻辑型、字符型 46.若x和y都是int型变量,x=100,y=200,且有以下程序段: printf(“%d”.(x,y)); 则,输出结果是(A)。 A)200B)100C)100,200D)输出格式不够,输出不确定的值 47.3.若t为double类型,表达式“t=1,t+5,t++”的值是(D)。 A)1B)6.0C)2.0D)1.0 48.设有如下定义: intx=10,y=3,z; 则语句: printf(“%d\n”,x/y); 的输出结果是(D)。 A)1B)0C)4D)3 49.执行下面程序后,b的值为(B)。 intx=25,b; charz=’A’; b=((x&&15)&&(z<’a’)); A)0B)1C)2D)3 50.阅读程序: main() { floatx,y; scanf(“%f”,&x); if(x<0.0)y=0.0; elseif((x<5.0)&&(x! =2.0)) y=1.0/(x+2.0); elseif(x>10.0)y=1.0/x; elsey=10.0; printf(“%f\n”,y); } 若运行时从键盘上输入2.0(回车),则上面程序的输出结果是(D)。 A)0.B)0.C)0.D)10. 51.在下面的运算符中,优先级最高的运算符是(C)。 A)<=B)=C)%D)&& 52.设a=1,b=2,c=3,d=4,则表达式“a a: c a: d”的结果为(D)。 A)4B)3C)2D)1 53.下面程序的运行结果是(D)。 main() { inta[8]={0},i,j,k=8; for(i=0;i for(j=0;j a[j]=a[i]+1; printf(“%d\n”,a[k]); } A)6B)7C)8D)不确定的值 54.下面程序运行后的输出结果是(D)。 main() { chara[7]=”abcdef”; charb[4]=”ABC”; strcpy(a,b); printf(“%c”,a[5]); } A)空格B)\0C)eD)f 55.C语言中,形参的缺省存储类型是(A)。 A)自动(auto)B)静态(static)C)寄存器(register)D)外部(extern) 56.下面程序运行后的输出结果是(B)。 Voidfun(inta,intb,intc) { a=456;b=567;c=678; } main() { intx=10,y=20,z=30; fun(x,y,z); printf(“%d,%d,%d\n”,x,y,z); } A)30,20,10B)10,20,30C)456,567,678D)678,567,456 57.阅读下面程序: #include main() { floatx,y,z; scanf(“%f%f”,&x,&y); z=x/y; while (1) { if(fabs(z)>1.0) { x=y;y=z;z=x/y; } elsebreak; } printf(“%f\n”,y); } 若从键盘输入3.6和2.4并回车,则输出结果是(B)。 A)1.B)1.C)2.D)2. 58.下面程序的输出结果是(D)。 main() { intx=10,y=10,i; for(i=0;x>8;y=++i) printf(“%d“,x--,y); } A)10192B)9876C)10990D)101091 59.下面程序运行后的输出结果是(B)。 main() { char*alpha[6]={“ABCD”,“EFGH”,“IJKL”,“MNOP”,“QRST”,“UVWX”}; char**p; inti; p=alpha; for(i=0;i<4;i++) printf(“%s”,p[i]); printf(“\n”); } A)ABCDEFGHIJKLB)ABCDEFGHIJKLMNOPC)ABCDD)AEIM 60.合法的C语言字符常量是(A)。 A)'\t'B)"A" C)65D)A 1. 61.若有以下说明语句 inta=5;a++; a++的值是(C)。 A)7B)6 C)5D)4 62.若t为double类型,表达式“t=1,t+5,t++”的值是(D)。 A)1B)6.0C)2.0D)1.0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 期末 复习