C语言程序设计复习题.pdf
《C语言程序设计复习题.pdf》由会员分享,可在线阅读,更多相关《C语言程序设计复习题.pdf(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C 语言程序设计复习题 一、选择题 1.以下选项中可作为C 语言合法整数的是 A)10110B B)0386 C)0Xffa D)x2a2 2.以下选项中合法的字符常量是 A)B B)010 C)68 D)D 3.以下不能定义为用户标识符的是 A)scanf B)Void C)_3com_ D)int 4.以下语句或语句组中,能正确进行字符串赋值的是 A)char*sp;*sp=right!;B)char s10;s=right!;C)char s10;*s=right!;D)char*sp=right!5.结构化程序由三种基本结构组成,三种基本结构组成的算法 可以完成任何复杂的任务 B)只能
2、完成部分复杂的任务 只能完成符合结构化的任务 D)只能完成一些简单的任务 6.在 C 语言中,合法的长整型常数是 A)OL B)4962710 C)324562&D)216D 7.以下有 4 组用户标识符,其中合法的一组是 A)For B)4d C)f2_G3 D)WORD -sub DO IF void Case Size abc define 8.下列函数定义中,会出现编译错误的是 A)max(int x,int y,int*z)B)int max(int x,y)*z=xy?x:y;int z;z=xy?x:y;return z;C)max(int x,int y)D)int max(i
3、nt x,int y)int z;return(xy?x:y);z=xy?x:y;return(z);9.假定 x 和 y 为 double 型,则表达式 x=2,y=x+3/2 的值是 A)3.500000 B)3 C)2.000000 D)3.000000 10.以下合法的赋值语句是 A)x=y=100 B)d-;C)x+y;D)c=int(a+b);11.设正 x、y 均为整型变量,且 x=10 y=3,则以下语句的输出结果是 printf(%d,%dn,x-,-y);A)10,3 B)9.3 C)9.2 D)10.2 12.x、y、z 被定义为 int 型变量,若从键盘给 x、y、z
4、输入数据,正确的输入语句是 A)INPUT x、y、z;B)scanf(%d%d%d,&x,&y,&z);C)scanf(%d%d%d,x,y,z);D)read(%d%d%d,&x,&y,&z);13.以下定义语句中正确的是 char a=Ab=B;B)float a=b=10.0;int a=10,*b=&a;D)float*a,b=&a;14.下列选项中,不能用作标识符的是 A)_1234_ B)_1_2 C)int_2_ D)2_int_ 15.有以下定义语句 double a,b;int w;long c;若各变量已正确赋值,则下列选项中正确的表达式是 a=a+b=b+C)(c+w)
5、%(int)a D)w=a=b;16.有以下程序 x=-m+;8/+n;printf(%dn,x);程序运行后的输出结果是 3 B)5 C)-1 D)-2 17.有以下程序 print(%c,+a);printf(%cn,b=a+);程序运行后的输出结果是 b,b B)b,c C)a,b D)a,c 18.有以下程序 printf(%o%on,mn,n);程序运行后的输出结果是 0256 0400 B)0256 256 C)256 400 D)400 400 19.有以下程序 printf(%dn,a,b);程序运行后的输出结果是 错误信息 B)666 C)888 D)666,888 20.有
6、以下程序 for(i=0;i3;i+)switch(i)case 0:printf(%d,i);case 2:printf(%d,i);default:printf(%d,i);程序运行后的输出结果是 022111 B)021021 C)000122 D)012 21.若 x 和 y 代表整型数,以下表达式中不能正确表示数学关系|x-y|10 的是 abs(x-y)-10&x-y10 (x-y)10 D)(x-y)*(x-y)b)if(bc)printf(%d,d+1);else printf(%d,+d+1);printf(%dn,d);程序运行后的输出结果是 2 B)3 C)43 D)44
7、 23.下列条件语句中,功能与其他语句不同的是 n,x);else printf(%dn,y);n,y);else printf(%dn,x);n,x);else printf(%dn,y);n,x);else printf(%dn,y);24.有以下程序 for(;)if(i=3|i=5)continue;if(i=6)break;i+;s+=i;printf(%dn,s);程序运行后的输出结果是 B)13 C)21 D)程序进入死循环 25.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是 for(i=1,p=1;i=5;i+)p*=i;for(i=1;i=5;i+)
8、p=1;p*=i;i=1;p=1;while(i=5)p*=i;i+;i=1;p=1;dop*=i;i+;while(i=5);26.有以下程序 scanf(%c,%c,%d,%d,&a,&b,&c,&d);printf(c,%c,%c,%cn,a,b,c,d);若运行时从键盘上输入:6,5,65,66。则输出结果是 6,5,A,B B)6,5,65,66 C)6,5,6,5 D)6,5,6,6 27.以下能正确定义二维数组的是 int a3;B)int a3=22*3;int a3=;D)int a23=1,2,3,4;28.有以下程序 for(i=0;f(s);i+)d+=s;n,d);程
9、序运行后的输出结果是 9 B)11 C)19 D)21 29.若有以下说明和语句,int c45,(*p)5;p=c;能正确引用 c 数组元素的是 p+1 B)*(p+3)D)*(p0+2)30.有以下程序 p=&a;q=&b;r=p;p=q;q=r;printf(%d,%d,%d,%dn,*p,q,a,b);程序运行后的输出结果是 8,7,8,7 B)7,8,7,8 C)8,7,7,8 D)7,8,8,7 31.s1和 s2 已正确定义并分别指向两个字符串。若要求:当 s1 所指串大于 s2 所指串时,执行语句 S;则以下选项中正确的是 if(s1s2)S;B)if(strcmp(s1,s2
10、)S;if(strcmp(s2,s1)0)S;D)if(strcmp(s1,s2)0)S;32.设有定义语句 要求依次输出 x 数组 6 个元素中的值,不能完成此操作的语句是 for(i=0;i6;i+)printf(%2d,*(p+);for(i=0;i6;i+)printf(%2d,*(p+i);for(i=0;i6;i+)printf(%2d,*p+);for(i=0;i6;i+)printf(%2d,(*p)+);33.有以下程序 *q=*(p+5);printf(%d%dn,*p,*1);程序运行后的输出结果是 运行后报错 B)6 6 C)6 11 D)5 10 34.有以下定义和语
11、句 则*p0+1)所代表的数组元素是 a01 B)a10 C)a11 D)a12 35.有以下程序 printf(%sn,p+10);程序运行后的输出结果是 B)Bejing C)ng D)ing 36.有以下程序 for(p=s+1;ps+4;p+)printf(%sn,p);程序运行后的输出结果是 B)A C)B D)BCD D B C CD C D D D 37.在函数调用过程中,如果函数 funA 调用了函数 funB,函数 funB 又调用了函数 funA,则 称为函数的直接递归调用 B)称为函数的间接递归调用 称为函数的循环调用 D)C 语言中不允许这样的递归调用 38.已有定义:
12、int i,a10,*p;,则合法的赋值语句是 p=100;B)p=a5;C)p=a2+2;D)p=a+2;39.以下叙述中正确的是 A)预处理命令行必须位于源文件的开头 B)在源文件的一行上可以有多条预处理命令 C)宏名必须用大写字母表示 D)宏替换不占用程序的运行时间 40.设有定义语句:char c1=92,c2=92;,则以下表达式中值为零的是 c1c2 B)c1&c2 C)c2 D)c1|c2 41.程序中对 fun 函数有如下说明 void*fun();此说明的含义是:fun 了数无返回值 fun 函数的返回值可以是任意的数据类型 fun 函数的返回值是无值型的指针类型 指针 fu
13、n 指向一个函数,该函数无返回值 42.有以下程序 main()n/No,*ps=s;puts(ps+4);*(ps+4)=0;程序运行后的输出结果是 n/No B)/No C)n/NO D)Yes Yes Yes/No/No/No Yes 43.有以下程序 ed int a;int b=-1;a=b;printf(%u,a);程序运行后的输出结果是 -1 B)65535 C)32767 D)-32768 44.有以下程序 main()int a;char c=10;float f=100.0;double x;a=f/=c*=(x=6.5);printf(%d%d%3.1f%3.1fn,a,
14、c,f,x);程序运行后的输出结果是 A)1 65 1 6.5 B)1 65 1.5 6.5 C)1 65 1.0 6.5 D)2 65 1.5 6.5 45.以下选项中非法的表达式是 A)0=xa)|(m=aB);printf(%d,%dn,k,m);程序运行后的输出结果是 A)0,0 B)0,1 C)1,0 D)1,1 47.有定义语句:int x,y;,若值 11,变量 y 得到数值 12,下面四组输入要通过 scanf(%d,%d,&x,&y);语句使变量 x 得到数形式中,错误的是 A)11 12 B)11,12 C)11,12 D)11,12 48.设有如下程序段:int x=20
15、02,y=2003;printf(%dn,(x,y);则以下叙述中正确的是 A)输出语句中格式说明符的个数少于输出项的个数,不能正确输出 B)运行时产生出错信息 C)输出值为 2002 D)输出值为 2003 49.设变量 x 为 float 型且已赋值,则以下语句中能将 x 中的数值保留到小数点后两位,并将第三位四舍五入的是 A)x=x*100+0.5/100.0;B)x=(x*100+0.5)/100.0;C)x=(int)(x*100+0.5)/100.0;D)x=(x/100+0.5)*100.0;50.有以下程序 if(inum B)p-num C)(*p).num D)stu3.a
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 复习题
限制150内