湖南工业大学C语言期末考试复习题机房题库.docx
- 文档编号:10230991
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:36
- 大小:28.26KB
湖南工业大学C语言期末考试复习题机房题库.docx
《湖南工业大学C语言期末考试复习题机房题库.docx》由会员分享,可在线阅读,更多相关《湖南工业大学C语言期末考试复习题机房题库.docx(36页珍藏版)》请在冰豆网上搜索。
湖南工业大学C语言期末考试复习题机房题库
C语言期末考试复习题(机房题库)
2、下列各选项中,合法的c语言关键字是()。
A.integexB.sinC.stringD.void参考答案:
D
3、C语言的程序一行写不下时,应该()。
A.用回车符换行B.在任意一个空格处换行C.用分号换行D.用逗号换行答案:
B
4、以下选项中正确的整型常量是()。
A.34.1B.-80C.2,000D.123参考答案:
B
5、在C程序中,可以作为用户标识符的一组标识符是()。
A.voiddefineWORDB.as_b3_224ElseC.switch_weleaseD.4bDOSIG答案:
B
8、以下叙述不正确的是()
A.一个c源程序可由一个或多个函数组成B.一个C源程序必须包含一个main()函数
C.c程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面答案:
D
9、C语言规定:
在一个源程序中,main()函数的位置()
A.必须在最开始B.必须在系统调用的库函数的后面
C.可以任意D.必须在最后参考答案:
C
10、在C语言中,数字029是一个()
A.八进制数B.十六进制数C.十进制数D.非法数参考答案:
D
12、C语言可执行程序的开始执行点是()
A.程序中的一条可执行语句B.程序中第一个函数
C.程序中的main函数D.包含文件中的第一个函数参考答案:
C
13、C程序是()
A.顺序执行B.从Main函数开始
C.从函数体开始D.任意语句参考答案:
B
16、以下说法中正确的是()。
A.C语言程序中是从第一定义的函数开始执行
B.在C语言程序中,要调用的函数必须在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分参考答案:
C
17、一个C程序的执行是从()
A.本程序的main函数开始,到main函数结束
B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C.本程序的main函数开始,到本程序文件的最后一个函数结束
D.本程序文件的第一个函数开始,到本程序main函数结束参考答案:
A
18、以下叙述正确的是()
A.在C程序中,main函数必须位于程序的最前面
B.C程序的每行中只能写一条语句
C.C语言本身没有输入输出语句
D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误答案:
C
1、C源程序的基本单位是___函数__
2、一个C源程序中至少应包括一个_________答案:
main函数
3、在一个C源程序中,注释部分两侧的分界符分别为________和_______参考答案:
/*,*/
4、函数体用_______开始,用______结束。
参考答案:
{,}
6、C语言中的标识符只能由3种字符组成,它们是_____、_____和_____
参考答案:
字母数字下划线
7、设a,b和c都是int型变量,且a=3,b=4,c=5,则下面表达式的值为0的是_______.
A.'a'&&'b'B.a<=bC.a||b+c&&b-cD.!
((a
c||1)参考答案:
D
10、判断字符型变量x是否是大写字母的正确的表达式______.
A.'A'<=x<='Z'B.(x>=A)&&(x<=Z)C.('A'<=x)&&('Z'=>x)D.(x>='A')&&(x<='Z')答案:
D
1、已知charch;则判断ch是英文字符的逻辑表达式是_______________
参考答案:
(ch<='z'&&ch>='a')||(ch<='Z'&&ch>='A')
2、表示条件:
10 参考答案: (X>10&&X<100)||X<0 3、写出下面各个逻辑表达式的值,设a=3,b=4,c=5 1)! (x=a)&&(y=b)&&0 2)a||b+c&&b-c 3)! (a>b)&&! c||1参考答案: 0,1,1 4、当a=3,b=2,c=1时,表达式f=a>b>c的值是_________参考答案: 0 6、设y是int型变量,请写出判断y为奇数的关系表达___________. 参考答案: (Y%2)==1 8、表示“整数x的绝对值大于5”时值为“真”的C语言表达式是——。 参考答案: x>5||x<-5 9、已知A=7.5,B=2,C=3.6,表达式A>B&&C>A||A C>B的值是——。 参考答案: 0 1、以下选项中属于C语言的数据类型是 A.复数型B.逻辑型C.双精度型D.集合型参考答案: C 2、在C语言中,不正确的int类型的常数是 A.32768B.0C.037D.0xAF参考答案: A 4、在C语言中,合法的长整型常数是 A.OLB.4962710C.324562&D.216D参考答案: A 7、以下所列的C语言常量中,错误的是 A.0xFFB.1.2e0.5C.2LD.'\72'参考答案: B 9、下列变量名合法的是() A.#1B.$567C.a-bD.m_number参考答案: D 14、C语言提供的合法的数据类型关键字是: A.Double B.short C.integer D.Char参考答案: B 15、在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为 A.char B.char=int C.char D.char=int=longint<=float A 16、下列四组选项中,均不是C语言关键字的选项是 A.defineIFtype B.getccharprintf C.includescanfcase D.whilegopow参考答案: A 17、下面四个选项中,均是合法整型常量的选项是 A.160-0xffff011 B.-0xcdf01a0xe C.-0x46a2e50x D.-0x48a2e50x参考答案: A 18、下面四个选项中,均是合法的浮点数的选项是 A.+1e+15e-9.403e2 B.-.6012e-4-8e5 C.123e1.2e-.4+2e-1 D.-e3.8e-45.e-0参考答案: B 20、下面四个选项中,均是不正确的八进制数或十六进制数的选项是 A.0160x8f018 B.0abc0170xa C.010-0x110x16 D.0a127ff-123参考答案: D 21、已知各变量的类型说明如下: intk,a,b; unsignedlongw=5; doublex=1.42; 则以下不符合C语言语法的表达式是 A.x%(-3)B.w+=-2C.k=(a=2,b=3,a+b)D.a+=a-=(b=4)*(a=3)答案: A 25、设C语言中,一个int型数据在内存中占2个字节,则unsignedint型数据的取值范围 A.0--255B.0--32767C.0--65535D.0—2147483647参考答案: C 2、设有以下变量定义,并已赋确定的值charw;intx;floaty;doublez; 则表达式: w*x+z-y所求得的数据类型为_: double 5、表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3))值的数据类型为___参考答案: int 6、表达式pow(2.8,sqrt(double(x)))值的数据类型为___: double______ 7、设C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为_______ 参考答案: -32768至32767 1、算法的表示方法有_答案: 自然语言,传统流程图,N-S流程图,伪代码,计算机语言 1、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系 的表达式为________。 A.a<>0B.! aC.a=0D.a! =0参考答案: D 2、以下程序输出结果是 main() {intm=5; if(m++>5)printf("%d\n",m); elseprintf("%d\n",m--);} A.7B.6C.5D.4参考答案: B 4、若变量都已经说明,则以下程序段输出为() a=10;b=50;c=30; if(a>b)a=b;b=c;c=a; printf("a=%db=%dc=%d\n",a,b,c); A.a=10b=50c=10B.a=10b=30c=10 C.a=50b=30c=10D.a=50b=30c=50参考答案: B 5、为避免嵌套的条件分支语句if…else的二义性,C语言规定,C程序中的 else总是与____组成配对关系。 A.其上面距它最近的,并且没有其他else与其配对的if相配对 B.在同一行上的if C.缩排位置相同的ifD.在其之前未配对的if参考答案: A 8、请读程序: 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(表示回车),则上面程序的输出结果是 A.0.000000B.0.250000C.0.500000D.1.000000参考答案: C 9、在执行以下程序时,为了使输出结果为t=4, 则给a和b输入的值应满足的条件是D main() {ints,t,a,b; scanf("%d,%d",&a,&b); s=1; t=1; if(a<0)s=s+1; if(a>b)t=s+1; elseif(a==b)t=5; elset=2*s; printf("t=%d\n",t); } A.0>a>b B.a=0 C.a=b<0 D.a 10、若有定义: floatw;inta,b;则合法的switch语句是() A.switch(w){case1.0: printf("*\n");case2.0: printf("**\n");} B.switch(a);{case1printf("*\n");case2printf("*\n");} C.switch(b){case1: printf("*\n");case2: printf("*\n");} D.switch(a+b);{case1: printf("*\n");default: printf("\n");case2}参考答案: C 11、判断两个字符串S1和S2相等的正确语句是____ A.if(S1=S2) B.if(S1==S2) C.if(strcpy(S1,S2)) D.if(strcmp(S1,S2)==0)参考答案: D 15、当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是 if(a if(c else if(a if(b elsex=3; elsex=6; elsex=7; A.1B.2C.3D.6参考答案: B 16、读下列程序: #include main() { intx,y; scanf(”%d”,&x); y=0; if(x>=0) {if(x>0)y=1;} elsey=-1; prinff(”%d”,y);} 当从键盘输入32时,程序输出结果为()。 A.0B.1C.-1D.不确定参考答案: B 18、如下程序的输出结果是()。 #include main() { inta=12,b=5,c=-3; if(a>b) if(b<0)c=0; elsec++; printf(”%d\n”,c); } A.0B.1C.-2D.-3参考答案: C 19、#include main() {intx: scanf(”%d”,&x); if(x--<5)prinff(”%d”,x); elseprintf(”%d”,x++); } 程序运行后,如果从键盘输入5,则输出结果是()。 A.3B.4C.5D.6参考答案: B 21、以下程序的运行结果是()。 #include main() { intk=2; switch(k) { case1: printf(”%d\n”,k++); break; case2: printf(”%d”,k++); case3: printf(”%d\n”,k++); break;。 case4: printf(”%d\n”,k++); A.缩排位置相同的ifB.其之前最近的if C.其之后最近的ifD.同一行上的if参考答案: B 24、下列语句正确的是() A.if(a>b>c)temp=a B.if((a=b)>0)temp=a C.inta=b=c=4 D.inta;scanf(%d,a)参考答案: B 26、有如下程序 main() {inta=2,b=-1,c=2; if(a if(b<0)c=0; elsec++ printf("%d\n",c); } 该程序的输出结果是 A.0B.1C.2D.3参考答案: C 27、与y=(x>0? 1: x<0? -1: 0);的功能相同的if语句是 A.if(x>0)y=1;elseif(x<0)y=-1;elsey=0; B.if(x)if(x>0)y=1;elseif(x<0)y=-1;elsey=0; C.y=-1if(x)y=1;elseif(x==0)y=0;elsey=-1; D.y=0if(x>-0)if(x>0)y=1;elsey=-1;参考答案: A 填空题: 2、以下程序运行后的输出结果是——。 #include main() {intx=10,y=20,t=0; if(x==y)t=x;x=y;y=t; printf(”%d,%d\n”,x,y); }参考答案: 0 3、若inti=10;,则执行下列程序后,变量i的正确结果是——。 switch(i) {case9: i+=1; case10: i+=1;. case11: i+=1: default: i+=1; }答案: ((20 4、下列程序段的输出结果是_____________。 intn='c'; switch(n++) {default: printf("error");break; case'a': case'A': case'b': case'B': printf("good");break; case'c': case'C': printf("pass"); case'd': case'D': printf("warm"); } 参考答案: passwarm 已知inta[][3]={1,2,3,4,5,6,7};,则数组a的第一维的大小是()。 A.2B.3C.4D.无确定值参考答案: B 2、有如下程序: #include main() {intn[5]={0,0,0},i,k=2; for(i=0;i printf(”%d\n”,n[k]); } 该程序的输出结果是()。 A.不定值B.2C.1D.0答案: D 3、以下程序的输出结果是()。 #include f(intb[],intm,intn) {inti,s=0; for(i=m;i returns; } main() {intx,a[]={1,2,3,4,5,6,7,8,9}; x=f(a,3,7); printf(”%d\n”,x); } A.10B.18C.8D.15答案: A 4、以下程序中函数reverse()的功能是将a所指数组中的内容进行逆置。 #include voidreverse(inta[],intn) {inti,t; for(i=0;i {t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;} } main() {intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0; reverse(b,8); A.22B.10C.34D.30 参考答案: A 5、在c语言中,一维数组的定义方式为: 类型说明符数组名()。 A.[常量表达式]B.[整型表达式] C.[整型常量]或[整型表达式]D.[整型常量] 参考答案: A 6、若有说明: inta[3][4];,则对a数组元素的非法引用是()。 A.a[O][2*1] B.a[1][3] C.a[4-2][0] D.a[0][4]答案: D 7、下面程序中有错误的行是()。 (1)main() (2){ (3)inta[3]={1}; (4)inti; (5)scanf(”%d”,&a); (6)for(i=1;i<3;i++)a[0]=a[0]+a[i]; (7)prinff(”%f\n”,a[0]); (8)} A.3B.6C.7D.5答案: D 11、下面程序________(每行程序前面的数字表示行号) 1main() 2{ 3floata[3]={0,0}; 4inti; 5for(i=0;i<3;i++)scanf("%d",&a[i]); 6for(i=1;i<10;i++)a[0]=a[0]+a[i]; 7printf("%f\n",a[0]); 8} A.没有错误B.第3行有错误,虽然编译能够通过 C.第5行有错误,虽然编译能够通过D.第7行有错误,虽然编译能够通过 参考答案: C 12、以下不正确的定义语句是 A.doublex[5]={2.0,4.0,6.0,8.0,10.0}; B.inty[5]={0,1,3,5,7,9}; C.charc1[]={'1','2','3','4','5'}; D.charc2[]={'\x10','\xa','\x8'}参考答案: B 13、执行下面的程序段后,变量k中的值为 s[0]=k;k=s[1]*10; A.不定值B.33C.30D.10答案: A 15、定义如下变题和数组: inti; intx[3][3]={1,2,3,4,5,6,7,8,9}; 则下面语句的输出结果是 for(i=0;i<3;i++)printf("%d",x[i][2-1]); A.159B.147 C.258D.369 参考答案: C 16、下列程序的输出结果是 main() {staticints[][3]={{1,2,3},{4,5,6}}; intt; t=(s[0][0],s[1][1],s[0][1]+s[1][2]); printf("%d\n",t); } A.5B.6C.7D.8 参考答案: D 17、下列对数组赋值的语句正确的是() A.statica[4]={0,0,0,0} B.inta[4]={0*4} C.statica[4]=0 D.statica[4];a=0;答案: A 19、若有说明inta[3][4];则对a数组元素的正确引用是 A.a[2][4]B.a[1,3] C.a[1+1][0]D.a (2) (1)答案: C 20、若有说明inta[3][4];则a数组元素的非法引用是 A.a[0][2*1]B.a[1][3]C.a[4-2][0]D.a[0][4]答案: D 1、用来引用特定数组元素的数字称为: 下标 2、把数组元素按顺序存放的过程称为_: 排序 4、在C语言中,二维数组元素在内存中的存放顺序是: 按行顺序存放 5、下面程序的运行结果是——。 #include main() {inti,f[10]; f[0]=f[l]=1; for(i=2;i f[i]=f[i-2]+f[i一1]; for(i=0;i {if(i%4==0)printf(”\n”); printf
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 湖南 工业大学 语言 期末考试 复习题 机房 题库