2022年程序设计语言C_习题集 .pdf
《2022年程序设计语言C_习题集 .pdf》由会员分享,可在线阅读,更多相关《2022年程序设计语言C_习题集 .pdf(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 1 页 共 29 页程序设计语言C课程习题集西南科技大学成人、网络教育学院版权所有习题【说明】:本课程程序设计语言C(编号为 03004)共有单选题,编程题,填空题等多种试题类型,其中,本习题集中有 填空题 等试题类型未进入。一、单选题1.在 C语言中,合法的长整型常数是AA)OL B)4962710 C)324562&D)216D2.以下有 4 组用户标识符,其中合法的一组是CA)For B)4d C)f2_G3 D)WORD 3.以下选项中合法的字符常量是BA)B B)010 C)68 D)D4.以下程序的输出结果是Dmain()int a=3;printf(%dn,a+(a-=a*a
2、);A)-6 B)12 C)0 D)-12 5.设 a、b、C、d、m、n 均为 int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=ab)&(n=cd)运算后,n 的值位为CA)0 B)1 C)2 D)36.t 为 int类型,进人下面的循环之前,t 的值为 0 while(t=l)B,则以下叙述中正确的是A)循环控制表达式的值为0 B)循环控制表达式的值为1 C)循环控制表达式不合法D)以上说法都不对7.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是BA)地址传递B)单向值传递C)由实参传给形参,再由形参传回实参D)传递方式由用户指定名师资
3、料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 29 页 -第 2 页 共 29 页8.以下程序的输出结果是Cmain()int i,a10;for(i=9;i=0;i-)ai=10-i;printf(%d%d%d,a2,a5,a8);A)258 B)741 C)852 D)3699.以下选项中,不能正确赋值的是AA)char s110;s1=Ctest;B)char s2=C,t,e,s,t;C)char s320=Ctest;D)char*s4=Ctestn;10.以下程序的输出结果是Dunion myun struct int x,y,z;u;int k;a;main()a.u.
4、x=4;a.u.y=5;a.u.z=6;a.k=0;printf(%dn,a.u.x);A)4 B)5 C)6 D)011.以下叙述正确的是CA)C 语言比其他语言高级B)C 语言可以不用编译就能被计算机识别执行C)C 语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C 语言出现的最晚、具有其他语言的一切优点12.C 语言中用于结构化程序设计的三种基本结构是AA)顺序结构、选择结构、循环结构B)if、switch、break C)for、while、do-while D)if、for、continue 13.下列关于C语言用户标识符的叙述中正确的是BA)用户标识符中可以出现下划线和
5、中划线(减号)B)用户标识符中不可以出现中划线,但可以出现下划线C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头14.有以下程序段int m=0,n=0;char c=a;scanf(%d%c%d,&m,&c,&n);printf(%d,%c,%dn,m,c,n);名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 29 页 -第 3 页 共 29 页若从键盘上输入:10A10,则输出结果是:AA)10,A,10 B)10,a,10 C)10,a,0 D)10,A,0 15.有以下程序main()A in
6、t i;for(i=0;i3;i+)switch(i)case 1:printf(%d,i);case 2:printf(%d,i);default:printf(%d,i);执行后输出的结果是A)011122 B)012 C)012020 D)12016.有以下程序Bmain()int i=10,j=1;printf(%d,%dn,i-,+j);执行后输出的结果是A)9,2 B)10,2 C)9,1 D)10,117.有以下程序Dvoid f(int x,int y)int t;if(xy)t=x;x=y;y=t;main()int a=4,b=3,c=5;f(a,b);f(a,c);f(b
7、,c);printf(%d,%d,%dn,a,b,c);执行后输出的结果是A)3,4,5 B)5,3,4 C)5,4,3 D)4,3,518.有以下程序Cmain()char*s=one,two,three,*p;p=s1;printf(%c,%sn,*(p+1),s0);执行后输出结果是名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 29 页 -第 4 页 共 29 页A)n,two B)t,one C)w,one D)o,two19.有以下程序Cmain()int m3=1,4,7,2,5,8,3,6,9;int i,k=2;for(i=0;i3;i+)printf(%d,m
8、ki);执行后输出结果是A)4 5 6 B)2 5 8 C)3 6 9 D)7 8 920.设有如下说明typedef struct int n;char c;double x;STD;则以下选项中,能正确定义结构体数组并赋初值的语句是AA)STD tt2=1,A,62,2,B,75;B)STD tt2=1,A,62,2,75;C)struct tt2=1,A,2,B;D)struct tt2=1,A,62.5,2,B,75.0;21.以下选项中属于C语言的数据类型是DA)复数型B)布尔型C)集合型D)整型22.一个 C程序的执行是从AA)main()函数开始,直到main()函数结束B)第一
9、个函数开始,直到最后一个函数结束C)第一个语句开始,直到最后一个语句结束D)main()函数开始,直到最后一个函数结束23.设有语句int a=3;则执行语句a+=a-=a*a;后,变量a 的值是 C A)3 B)-12 )24.若有 char c5=c,d,0,e,0;则执行语句printf(%s,c);结果是 CA)cd0e B)cd C)cd D)cd e 25.已知:int a23=1,2,3,4,5,6,(*p)3=a;下列表达式不是4 的是 BA)*(*p+3)B)*p+3 C)*(*(p+0)+3)D)a03 26.以下有宏替换不正确的叙述DA)宏替换不占用运行时间 B)宏名无类
10、型)宏替换只是字符串替换)宏名必须用大写字母表示27.执行 char str10=”Chnina”;strlen(str)的值是 BA)5 B)6)7)9 28.下面程序的输出结果是D#define POWER(x)(x*x)main()名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 29 页 -第 5 页 共 29 页 int i=4;printf(%d,POWER(i-2);A)-9 B)-7 C)5 D)-629.在定义 int a34;后,第 10 个元素是DA)a24)a32 )a33)a3130.下面程序的输出结果是D typedef struct long x2;s
11、hort y4;char z8;MYTYPE;MYTYPE a;main()printf(%dn,sizeof(a);A)2 B)8 C)14 D)24 31.以下能正确进行字符串赋值的是CA)char s5=a,e,I,o,u B)char s5;s=”good”C)char s5=”abcd”D)char s5;s=”good”32.若有 float x;则 sizeof(x)和 sizeof(float)两种描述A A)都正确B)都不正确C)前者正确,后者不正确D)后者正确,前者不正确33.若有代数式3ae/(bc),则不正确的C语言表达式是AA)3*a*e/b*c B)3*a*e/b/
12、c C)a/b/c*e*3 D)a*e/c/b*3 34.下面程序的运行结果是DMain()struct cmplx int x;int y;cnum2=1,3,2,7;Printf(“%dn”,cnum0.y/cnum0.x*cnum1.x);A)0 B)1 C)3 D)6 35.若有以下说明和语句,且0=i10,则()是对数组元素的错误引用Cint a=1,2,3,4,5,6,7,8,9,0,*p,i;p=a;A)*(a+i)B)ap-a C)p+i D)*(&ai)36.设有以下宏定义:C#define M 2#define X(m)(M+2)*m)则执行语句:z=2*(M+X(3+2)
13、;后,z 的值为A)44 B)45 C)32 D)33 名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 29 页 -第 6 页 共 29 页37.在如下程序段中的while循环 Bint k=0;While(k=1)k+;A)有语法错,不能执行B)无限循环C)一次都不执行D)执行一次38.下列程序运行的结果为D#include Main()int k=0;Char c=A;Do switch(c+)case A:k+;break;Case B:k-;break;Case C:k+=2;break;Case D:k=k%2;break;Case E:k=k*10;break;Def
14、ault:k=k/3;K+;while(cG);Printf(“k=%d”,k);A)k=4 B)k=6 C)k=7 D)k=8 39.下列程序运行的结果为C#include fun(int x,int y,int*cp,int*dp)*cp=x+y;*dp=x-y;main()int a,b,c,d;a=30;b=50;fun(a,b,&c,&d);printf(“%d,%dn”,c,d);A)50,30 B)30,50 C)80,-20 D)80,20 40.阅读程序回答问题:名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 29 页 -第 7 页 共 29 页main()in
15、t i,j,k,m=0;for(i=1;i4;i+)for(j=1;j4;j+)for(k=1;k0)D)if(b=0)m=1;n=2;45.有以下程序main()char k;int i;for(i=1;i3;i+)scanf(%c,&k);switch(k)case 0:printf(anothern);case 1:printf(numbern);程序运行时,从键盘输入:01,程序执行后的输出结果是CA)another B)another C)another D)number number number number number another number 名师资料总结-精品资料欢迎
16、下载-名师精心整理-第 7 页,共 29 页 -第 8 页 共 29 页46.有以下程序void f(int v,int w)int t;t=v;v=w;w=t;main()int x=1,y=3,z=2;if(xy)f(x,y);else if(yz)f(y,z);else f(x,z);printf(%d,%d,%dn,x,y,z);执行后输出结果是CA)1,2,3 B)3,1,2 C)1,3,2 D)2,3,1 47.有以下程序段Dint a10=1,2,3,4,5,6,7,8,9,10,*p=&a3,b;b=p5;b 中的值是A)5 B)6 C)8 D)9 48.有以下程序A#defi
17、ne f(x)x*x main()int i;i=f(4+4)/f(2+2);printf(%dn,i);执行后输出结果是A)28 B)22 C)16 D)4 49.设有以下语句typedef struct S int g;char h;T;则下面叙述中正确的是BA)可用 S定义结构体变量B)可以用 T定义结构体变量C)S 是 struct类型的变量D)T 是 struct S类型的变量50.有以下程序Cint a=2;int f(int*a)return(*a)+;main()名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 29 页 -第 9 页 共 29 页 int s=0;
18、int a=5;s+=f(&a);s+=f(&a);printf(%dn,s);执行后输出结果是A)10 B)9 C)7 D)8 51.组成 C程序的基本单位是AA)函数B)标识符C)表达式D)语句52.设 int类型的数据长度为2 字节,则该类型数据的取值范围DA)0 至 65536 B)0 至 65535 C)-32767 至 32768 D)-32768 至 3276753.在 C语言中,逻辑值“真”是用()表示的。BA)预定义为真值的宏B)非零数C)正数D)非零整数54.C语言对于嵌套if语句规定else 总是与()匹配BA)与最外层的if B)与之前最近的if C)与之前最近的不带e
19、lse 的 if D)与最近的 之前的 if55.数组定义char a10=a,b,c:包括了几个元素DA)3 B)9 C)4 D)1056.数组名作为实参传给被调用的函数时,形参获得的是CA)该数组第一个元素的值B)该数组所有元素的值C)该数组第一个元素的首地址D)该数组任意元素的地址57.为表示关系x y z,正确的C语言表达式为CA)(x=y=z)B)(x=y)AND(y=z)C)(x=y)&(y=z)D)(xy)&(y=z)58.根据定义int a=1,2,3,i,*p=a;从语法分析()是不正确的。DA)ap-a B)*(&a)C)p D)*(*(a+i)59.若有语句scanf(“
20、%d%d”,&a,&b);要使变量a,b 分别得到12 和 34;正确的输入形式为 AA)12 34 B)12,34 C)1234 D)12:3460.union uex int i;float f;char c;ex;则 sizeof(ex)的值是AA)4 B)5 C)6 D)7 61.将十六进制数176 转换成十进制数是C A)366 B)268 C)374 D)270 62.下列语句中符合C 语言语法的赋值语句是D A)a=7+b+c=a+7 B)a=7+b+=a+7 C)a=7+b,b+,a+7 D)a=7+b,c=a+7 63.在 C 语言中,要求运算数必须是整型的运算符是A 名师资
21、料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 29 页 -第 10 页 共 29 页A)%B)/C)D)!64.已知字母A 的 ASC码为十进制的65,下面程序的输出是A A)67,D B)B,C C)C,D D)不确定的值main()char ch1,ch2;ch1=A+5-3;ch2=A+6-3;printf(%d,%cn,ch1,ch2);65.下面程序的输出是C A)0 B)1 C)3 D)不确定的值main()int x=10,y=3;printf(%dn,y=x/y);66.若执行下面的程序时从键盘上输入3 和 4,则输出是B A)14 B)16 C)18 D)20 ma
22、in()int a,b,s;scanf(%d%d,&a,&b);s=15;if(a*5)printf(%dn,+s);else printf(%dn,s-);67.下面程序的输出是AA)3 B)4 C)1 D)2 main()int a10=1,2,3,4,5,6,7,8,9,10,*p=a;printf(%dn,*(p+2);68.执行下面程序中输出语句后,a 的值是 C A)65 B)20 C)15 D)10 main()int a,k,b;printf(%dn,(a=3*5,a*4,a+5);printf(%d%d%d%n,k,a,b);69.下列函数的功能是A A)求字符串的长度B)比
23、较两个字符串的大小C)将字符串X 复制到字符串Y D)将字符串X 连接到字符串Y 后面int fun1(chat*x)char*y=x;名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 29 页 -第 11 页 共 29 页while(*y+);return(y-x-1);70.若 fp 是指向某文件的指针,且已读到该文件的末尾,则 C语言函数feof(fp)的返回是DA)EOF B)-1 C)非零值D)NULL 71.二进制语言是属于AA)面向机器语言B)面向过程语言C)面向问题语言D)面向汇编语言72.不是 c 语言提供的合法关键字是B A)switch B)cher C)c
24、ase D)default 73.执行语句“x=(a=3,b=a-)”后,x,a,b的值依次为CA)3,3,2 B)3,2,2 D)3,2,3 D)2,3,2 74.表达式“10!=9”的值是DA)true B)非零值C)0 D)1 75.以下程序的输出结果是D main()int x=10,y=10;printf(“%d%d、n”,x-,-y);A)10 10 B)9 9 C)9 10 D)10 9 76.以下程序的输出结果是D main()int x=10,y=10;printf(“%d%d n”,x+,-y);A)10 10 B)9 9 C)9 10 D)10 9 77.设有如下定义:D
25、char*aa2=“abcd”,“ABCD”;则以下就法中正确的是 A)aa 数组成元素的值分别是“abcd”和ABCD B)aa 是指针变量,它指向含有两个数组元素的字符型一维数组 C)aa 数组的两个元素分别存放的是含有4 个字符的一维字符数组的首地址 D)aa 数组的两个元素中各自存放了字符a 和A 的地址78.下列程序的输出结果是D main()char p110=abcd,p210=ABCD,str50=xyz;strcpy(str,strcat(p1,p2);名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 29 页 -第 12 页 共 29 页 printf(%s,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年程序设计语言C_习题集 2022 程序设计语言 C_ 习题集
限制150内