湖南科技大学C语言期末试题库 (3).doc_第1页
湖南科技大学C语言期末试题库 (3).doc_第2页
湖南科技大学C语言期末试题库 (3).doc_第3页
湖南科技大学C语言期末试题库 (3).doc_第4页
湖南科技大学C语言期末试题库 (3).doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

志伟分享 左凯小编选择题(共 题),成绩()1、下列四组常数中,均是正确的八进制数或十六进制数的一组是:A) 016 0xbf 018B) 0abc 017 0xaC) 010 0x11 0x16D) 0A12 7FF -123正确答案是: C2、下列四组转义符中,均合法的一组是:A) t n B) 017 xC) 018 f xab D) 0 101 xif正确答案是: A3、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值:A) 0 B) 1C) 12 D) 6 正确答案是: A4、设a=1,b=2,c=3,d=4,则表达式ab?a:cd?a:d的值是:A) 4 B) 3C) 2 D) 1正确答案是: D5、设x,y,z,s均为int型变量,且初值均为1,则执行语句s=+x|+y&+z后,则s的值为:A) 不定值 B) 2C) 1 D) 0正确答案是: C6、阅读下面的程序#includevoid main() int i,j; scanf(%3d%2d,&i,&j); printf(i=%d,j=%dn,i,j);如果从键盘上输入1234567,则程序的运行结果是:A) i=123,j=4567 B) i=1234,j=567C) i=1,j=2 D) i=123,j=45正确答案是: D7、阅读下面的程序#includevoid main()char c1,c2; c1=getchar(); c2=c1+3; printf(%c,%dn,c2,c2); 已知A的ASCII的值为65,如果从键盘上输入 D则程序的运行结果是:A) D,68 B) G,68C) D,71 D) G,71正确答案是: D8、设有如下定义: int x=10,y=3,z;则语句 printf(%dn,z=(x%y,x/y);的输出结果是A) 1 B) 0 C) 4 D) 3正确答案是: D9、请选出可用作C语言用户标识符的一组标识符A) void B) a3_b3 C) For D) 2a define _123 -abc DO WORD IF Case sizeof 正确答案是: B10、若有以下定义: float x; int a,b; 则正确的switch 语句是A) switch(x) B) switch(x) case 1.0:printf(*n); case 1,2:printf(*n); case 2: printf(*n) case 3:printf(*n); C) switch(a+b) D) switch(a-b); case 1: printf(*n) ; case 1:printf(*n); case 2: printf(*n); case 2:printf(*n); 正确答案是: C11、有如下程序段 int a=14,b=15,x; char c=A; x=(a&b) & (cy) z=x;x=y;y=z; 语句后,x、y、z 的值是( )。A) x=10,y=20,z=30 B) x=20,y=30,z=30C) x=20,y=30,z=10 D) x=20,y=30,z=20正确答案是: B13、下列程序的执行结果是( )。 #include stdio.h void main( ) int x=2000,a=15,b=30,c=5,d=0; if (a100) printf(%dn,a100); else printf(%dn,a=100); A) a=100 B) 100C) 0 D) 1正确答案是: D15、下面程序的输出结果是( )。 #include void main( ) int a=-1,b=1,k; if (+a0) & (b-=0) printf(%d %dn,a,b); else printf(%d %dn,b,a); A) -1 1 B) 0 1C) 1 0 D) 0 0正确答案是: C16、执行以下程序,分别输入10和30,运行的结果分别是( )。 #include void main( ) int x,c,y; scanf(%d,&x); if (x0) c=-1; else c=x/10; switch (c) case -1: y=0; break; case 0: y=x; break; case 1: y=10; break; case 2: case 3: y=-0.5*x+20; break; default: y=-2; if (y!=-2) printf(y=%dn,y); else printf(errorn); A) y=10 B) y=10 y=-2 y=10C) y=10 D) y=0 y=5 y=-2正确答案是: C17、执行下列程序段后的输出结果是( )。 int x=1,y=1,z=1; x+=y+=z; printf(%dn,x=A & ch=Z)?ch+32:ch的值是:A) Z B) aC) z D) A正确答案是: B19、设i,j,k均为int型变量,则执行完下面的for循环后,k的值为 for(i=0,j=10;i=j;i+,j-) k=i+j;A) 12 B) 10C) 11 D) 9 正确答案是: B20、若i,j已定义成int型,则以下程序段中循环体的总执行次数是( )。 for(i=3;i;i-) for(j=0;j2;j+) for(k=0;k=2;k+) .A) 18 B) 27C) 36 D) 30正确答案是: A21、以下程序的输出结果是#include void main( ) int a,b; for(a=1,b=1;a=10) break; if (b%5=1) b+=5; continue; printf(%dn,a); A) 101 B) 6C) 4 D) 3正确答案是: D22、以下程序的输出结果是( )。 #include void main() int i; for(i=1;i=5;i+) if(i%2) printf(*); else continue; printf(#); printf($n); A) *#$ B) #*#*#*$C) *#*#*#$ D) *#*$正确答案是: A23、下面程序的输出结果是( )。 #include void main( ) int x=10,y=10,i; for(i=0;x8;y=+i) printf(%d %d ,x-,y); A) 10 1 9 2 B) 9 8 7 6C) 10 9 9 0 D) 10 10 9 1正确答案是: D24、下面程序的运行结果是( )。 #include void main( ) int i; for(i=1;i=150) & (i*i=200) break; printf(%dn,i*i); A) 144 B) 255C) 169 D) 121正确答案是: C25、下面程序段的运行结果是( )。 for(i=1;i=5;) printf(%d,i); i+;A) 12345 B) 1234C) 15 D) 无限循环正确答案是: D26、以下程序的输出结果是( )。 #include void main( ) int i,j,x=0; for(i=0;i2;i+) x+; for(j=0;j3;j+) if (j%2) continue; x+; x+; printf(x=%dn,x); A) x=4 B) x=8C) x=6 D) x=12正确答案是: B27、下列程序的输出结果是( )。 #includevoid main( ) int i, j, k; for(i=0;i=2;i+) for(k=1;k=i;k+) printf( ); for(j=0;j=3;j+) printf(*); printf(n); A) * B) * * * * *C) * D) * * * * *正确答案是: B28、有如下程序#includevoid main() char ch80; int j;long s=0; printf(Enter a numeral stringn); gets(ch); for(j=0;chj0;j+) s=10*s+chj-0; printf(%ldn,s); 如果运行时,从键盘上输入由数字组成的字符串,该程序的功能是_。A) 测字符数组ch的长度B) 将数字字符串ch转换成十进制数C) 将字符数组中的小写字母转换成大写D) 将字符数组中的大写字母转换成小写正确答案是: B29、有如下程序#includevoid main() char ch80=123abcdEFG*&; int j;long s=0; for(j=0;chj0;j+) ; printf(%dn,j); 该程序的功能是_。A) 测字符数组ch的长度B) 将数字字符串ch转换成十进制数C) 将字符数组ch中的小写字母转换成大写D) 将字符数组ch中的大写字母转换成小写正确答案是: A30、以下程序的输出结果是_。#include void main() char st20=hello0t; printf(%dn,strlen(st); A) 9 B) 5 C) 13 D) 20正确答案是: B31、以下程序执行后的输出结果是_ 。(设a00 是数组a中的第1个元素)#include void main( ) int a45=1,2,4,8,10,-1,-2,-4,-8,-10,3,5,7,9,11; int i,j,n=9; i=n/5; j=n-i*5-1; printf(NO. %d: %d,%d is %dn,n,i,j,aij); A) 第n个元素所在的行和列及其该元素的值B) 第n行的最大元素所在的行和列及其最大值C) 第i行的最大元素所在的行和列及其最大值D) 以上都不对正确答案是: A32、若希望下面的程序运行后输出45,程序空白处的正确选择是_。#include void main( ) int i,j=10,a =1,3,5,7,9,11,13,15; for( _ ) j+=ai; printf(%dn,j); A) i=5;i1;i- B) i=0;i=1;-i D) i=2;i6;+i正确答案是: C33、下面程序运行后,输出的结果是_。#include void main( ) char s10=flexible,c; int i=0,j; for(j=1;jsj&sj!=0) c=si;si=sj;sj=c; printf(%sn,s); A) xlfeible B) blfxieleC) xfelible D) blexifle正确答案是: B34、下面程序运行后,输出结果是_。#include void main( ) int a10=1,2,3,4,5,6,i,j; for(i=0;i6;i+) j=ai;ai=a5-i;a5-i=j; for(i=0;i6;i+) printf(%d ,ai); A) 6 5 4 3 2 1 B) 1 2 3 4 5 6C) 1 5 4 3 2 6 D) 1 5 3 4 2 6正确答案是: B35、下列程序运行后,输出的结果是_。#include void main( ) char p 10= BOOL, OPK, H, SP; int i; for(i=3; i=0; i-,i-) printf( %c, pi0); printf(n); A) BOHS B) SHOBC) HB D) SO正确答案是: D36、给出以下定义:char x =abcdefg;char y =a,b,c,d,e,f,g;则正确的叙述为 _。A) 数组x和数组y等价B) 数组x和数组y的长度相同C) 数组x的长度大于数组y的长度D) 数组x的长度小于数组y的长度 正确答案是: C37、C语言中,凡未指定存储类别的局部变量的隐含存储类别是:A) 自动(auto) B) 静态(static)C) 外部(extern) D) 寄存器(register)正确答案是: A38、以下程序的输出结果是_。 #include void fun() static int a=0; a+=2; printf(%d,a); void main() int cc; for(cc=1;cc4;cc+) fun( ); printf(n); A) 2222 B) 2468C) 222 D) 246正确答案是: D39、下列程序的输出结果是_。 #include int t(int x,int y,int cp,int dp) cp=x*x+y*y; dp=x*x-y*y; void main() int a=4,b=3,c=5,d=6; t(a,b,c,d); printf(%d %dn,c,d); A) 16 9 B) 4 3C) 5 6 D) 25 9正确答案是: C40、若形参n的值为24,则调用prnt函数后,最后一行输出_个数。 void prnt(int n,int arr) int i; for(i=1;i=n;i+) printf(%6d,arri); if( !(i%5) ) printf(n); printf(n); A) 2 B) 3C) 4 D) 5正确答案是: C41、下面程序的输出是_。#includevoid main() char a80= abcdefgh; fun(a); puts(a); fun(char s10) int x=0,y; char c; for(y=strlen(s)-1;xy;x+,y-) c=sx;sx=sy;sy=c; A) abcdefgh B) hgfdecbaC) dcbahgfe D) hgfedcba正确答案是: D42、若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b);在此函数调用语句中实参的个数是_。A) 3 B) 4C) 5 D) 6 正确答案是: A43、以下程序的输出结果是_。#include int func( int x) int p; if(x=0 | x=1) return (3); p=x-func(x-2); return p; void main( ) printf(%dn,func(9); A) 7 B) C) 0 D) 3正确答案是: A44、分析程序:#include int sum(int k) int x=0; return x+=k; void main() int i,s; for(i=1;i=10;i+) s=sum(i); printf(s=%dn,s); 则下面的说法中正确的是_。A) 程序的输出是1+(1+2)+(1+2+3+10)之值B) 程序的输出是1+2+3+10之值C) 程序的输出结果是s=10D) 以上都不对正确答案是: C45、下面程序的输出是_。#include int m=13;int fun2(int x, int y) int m=3; return(x*y-m); void main() int a=7, b=5; printf(%dn,fun2(a,b)/m);A) 1 B) 2C) 7 D) 10正确答案是: B选择题(共 题),成绩()1、以下能正确定义变量a、b和c并为其赋值的语句是:A) int a=5; b=5; c=5; B) int a,b,c=5;C) a=5, b=5, c=5; D) int a=5, b=5, c=5;正确答案是: D2、设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f的数据类型是:A) int型 B) float型C) double型 D) 不确定正确答案是: C3、以下对整数的书写形式中,错误的是:A) 7000L B) 17000LC) -3078u D) 32767正确答案是: C4、表达式5!=3的值是:A) T B) 非零值C) 0 D) 1正确答案是: D5、以下符合C语言语法的表达式:A) d=9+e+f=d+9 B) d=9+e,f=d+9C) d=9+e=e+,d+9 D) d=9+e+=d+7正确答案是: B6、若有定义int a=12,则表达式a+=a-=a*=a的值是:A) 0 B) -264C) -144 D) 132正确答案是: A7、请读程序: #include void main() int a; float b,c; scanf(%2d%3f%4f,&a,&b,&c); printf(na=%d,b=%f,c=%fn,a,b,c); 若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是A) a=98,b=765,c=4321 B) a=10,b=432,c=8765C) a=98,b=765.000000,c=4321.000000 D) a=98,b=765.0,c=4321.0正确答案是: C8、下列语句中符合C语言语法的赋值语句是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; 正确答案是: D9、执行下面程序中的输出语句后,输出结果是#includevoid main()int a; printf(%dn,(a=3*5,a*4,a+5);A) 65 B) 20 C) 15 D) 10正确答案是: B10、为表示关系xyz,应使用C语言表达式A) (x=y)&(y=z) B) (x=y)AND(y=z)C) (x=y=z) D) (x=y) | (y=z)正确答案是: A11、设a=1,b=2,c=3,d=4,则表达式: ab?a:c0) s=a+b; if (a0) if (c0) w=a-b; else t=c; printf(%d,%d,%dn,s,w,t); A) 2,0,0 B) 0,0,2C) 0,2,0 D) 2,0,2正确答案是: A15、请读程序: #include void main( ) float x,y; scanf(%f,&x); if (x0.0) y=0.0; else if (x5.0) & (x!=2.0) y=1.0/(x+2.0); else if (x10.0) y=1.0/x; else y=10.0; printf(%fn,y); 若运行时从键盘上输入2.0(表示回车),则上面程序的输出结果A) 0.000000 B) 0.250000C) 0.500000 D) 1.000000正确答案是: C16、以下程序的输出结果是 #include void main( ) int a=-1,b=4,k; k=(+a0) & !(b-=0); printf(%d,%d,%dn,k,a,b); A) 1,0,4 B) 1,0,3C) 0,0,3 D) 0,0,4正确答案是: D17、设x和y均为int型变量,则执行下面的循环后,y的值为 for(y=1,x=1;y=10) break; if (x%2=1) x+=5; continue; x-=3; A) 2 B) 4C) 6 D) 8正确答案是: C18、有如下程序 #include void main( ) float x=5.0,y; if(x0.0) y=0.0; else if (x10.0) y=1.0/x; else y=1.0; printf(%fn,y); 该程序的输出结果是A) 0.000000 B) 0.50000C) 0.200000 D) 1.000000正确答案是: C19、以下for循环是( )。for(x=0,y=0;(y!=123) & (x4);x+)A) 无限循环 B) 循环次数不定C) 执行4次 D) 执行3次正确答案是: C20、下面程序的输出结果是( )。#include void main( ) int y=9; for(;y0;y-) if(y%3=0) printf(%d,-y); continue; A) 741 B) 852C) 963 D) 875421正确答案是: B21、下面程序的输出结果是( )。 #include void main( ) int x=10,y=10,i; for(i=0;x8;y=+i) printf(%d %d ,x-,y); A) 10 1 9 2 B) 9 8 7 6C) 10 9 9 0 D) 10 10 9 1正确答案是: D22、有如下程序 #include void main() int x=23; do printf(%d,x-); while(!x); 该程序的执行结果是A) 321 B) 23C) 不输出任何内容 D) 陷入死循环正确答案是: B23、以下程序运行后的输出结果是( )。 #include void main() int i=10,j=0; do j=j+1; i-; while(i2); printf(%dn,j); A) 50 B) 52C) 51 D) 8正确答案是: D24、下面程序的运行结果是( )。 #include void main( ) int m=7,n=5,i=1; do if (i%m=0); if (i%n=0) printf(%dn,i); break; i+; while(i!=0); A) 7 B) 6C) 5 D) 4正确答案是: C25、有以下程序 #include void main() int c; while (c=getchar()!=n) switch(c-2) case 0: case 1: putchar(c+4); case 2: putchar(c+4);break; case 3: putchar(c+3); default: putchar(c+2);break; printf(n); 从第一列开始输入以下数据,代表一个回车符。 2473 程序的输出结果是( )。A) 668977 B) 668966C) 66778777 D) 6688766正确答案是: A26、请读程序: #include #include void main( ) float x,y,z; scanf(%f%f,&x,&y); z=x/y; while(1) if (fabs(z) 1.0) x=y; y=z; z=x/y; else break; printf(%fn,y); 若运行时从键盘上输入 3.6 2.4(表示回车),则输出结果是( )。A) 1.500000 B) 1.600000C) 2.000000 D) 2.400000正确答案是: B27、有以下程序 #include void main() int i, j; for(j=10;j11;j+) for(i=9;i=j-1) printf(%d,j); 输出结果是( )。A) 11 B) 10C) 9 D) 10 11正确答案是: B28、下列程序执行后的输出结果是_。#includevoid main() int i,j,a33; for(i=0;i3;i+) for(j=0;j3;j+) aij=i*j+1; printf(%d,%dn,a12,a21); A) 3,3 B) 3,不定值C) 3 D) 3,1正确答案是: A29、下列程序执行后的输出结果是_。#includevoid main() char arr24; strcpy(arr0,you); strcpy(arr1,me); printf(%sn,arr0); A) you&me B) youC) me D) err正确答案是: B30、下面程序的功能是_。#include #include void main() char a=clanguage,t; int i,j,k; k=strlen(a); for(i=0;i=k-1;i+=1) for(j=i+1;jaj) t=ai;ai=aj;aj=t; puts(a); printf(n); A) 将字符数组a中的元素从小到大排序B) 将字符数组a中的元素从大到小排序C) 求字符数组a中的最大元素D) 将字符数组a中的最小元素正确答案是: A31、以下程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数。例如,输入的字符串为:556,则输出十进制整数366,划线处应填_。#include void main() char s6; int n,j; gets(s); if(s0!=0) n=s0-0; j=0; while(s+j!=0) _; printf(%dn,n); A) n=n*8+sj-0 B) n=n*8+sjC) n=n*8+sj-0 D) n=n*8+sj-0正确答案是: D32、以下程序的输出结果是_。#include void main() char a10=1,2,3,0,5,6,7,8,9,0; printf(%sn,a); A) 123 B) 1230C) 123056789 D) 1230567890正确答案是: A33、下列程序段的输出结果是_。#include void main() char b=Hello,you; b5=0; printf(%sn,b); A) Hello,you B) HelloC) Hello0you D) H正确答案是: B34、如果有定义语句char str110,str210=books;则能将字符串books赋给数组str1的正确语句是_。A) str1=books; B) strcpy(str1,str2);C) str1=str2; D) strcpy(str2,str1); 正确答案是: B35、若有说明char c7=s,t,r,i,n,g;则对元素的非法引用是_。A) c0 B) c9-6C)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论