




已阅读5页,还剩230页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖南科技大学C语言部分试题题库一、 选择题1、下面程序的输出是:#includevoid main() unsigned int a=32767; printf(a=%dn,a); A) a=32768 B) a=-32767 C) a=32767 D) a=-1正确答案是: C2、设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f的数据类型是:A) int型 B) float型 C) double型 D) 不确定正确答案是: C3、以下符合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正确答案是: B4、设有如下变量定义: int i=8,k,a,b;unsigned w=5;double x=1.42, y=5.2;则以下符合C语言语法的表达式是:A) a+=a-=(b=4)*(a=3) B) x%(-3) C) a=a*3=2 D) y=float(i)正确答案是: A5、已知x=43,ch=A,y=0,则表达式(x=y&chB&!y)的值是:A) 0 B) 语法错 C) 1 D) 假 正确答案是: 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=567 C) 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,68 C) D,71 D) G,71正确答案是: D8、已知字母A的ASCII码为十进制的65,下面程序的输出是#includevoid main()char ch1,ch2; ch1=A+5-3; ch2=A+6-3; printf(%d,%cn,ch1,ch2);A) 67,D B) B,C C) C,D D) 不确定的值正确答案是: A9、下面程序的输出是#includevoid main()int x=023; printf(%dn,-x);A) 17 B) 18 C) 23 D) 24正确答案是: B10、表达式: 10!=9的值是A) true B) 非零值 C) 0 D) 1正确答案是: D11、设a为整型变量,不能正确表达数学关系:10a15 的C语言表达式是A) 10a10 & a15 D) !(a=15)正确答案是: A12、若有以下定义: int a,b,c1,c2,x,y; 则正确的switch 语句是A) switch(a+b); B) switch(a*a+b*b) case 1:y=a+b;break; case 3: case2:y=a-b;break; case1:y=a+b;break; case 3:y=b-a;break; C) switch a D) switch(a-b) case c1:y=a-b;break; default:y=a*b;break; case c2:y=a*d;break; case 3: default:x=a+b; case 4:x=a+b;break; case 10:正确答案是: D case 11:y=a-b;break; 13、若运行下面程序时,给变量a输入15,则输出结果是 #include void main( ) int a,b; scanf(%d,&a); b=a15?a+10:a-10; printf(%dn,b) ; A) 5 B) 25 C) 15 D) 10正确答案是: A14、与 y=(x0?1:x0) y=1; B) if(x) else if (x0) y=1; else y=0; else if (x=0) if (x0) y=1; if (x0) y=1; else if (x=0) y=0; else y=-1; else y=-1; 15、有如下程序:#include void main( ) int a=2,b=-1,c=2; if (ab) if (b0) c=0; else c+; printf(%dn,c); 该程序的输出结果是A) 0 B) 1 C) 2 D) 3正确答案是: C16、指出下列程序段所表示的逻辑关系是( B )。 if (ab) if (c=d) x=1; else x=2; 1 ab且 c=dA) x= 2 ab且 cd 1 ab且 c=dB) x= 2 ab 1 ab且 c=dC) x= 2 ab且 cd 1 ab且 c=dD) x= 2 cd17、执行下列程序,输入为3的输出结果是( B )。 #include void main( ) int k; scanf(%d,&k); switch (k) case 1: printf(%dn,k-); case 2: printf(%dn,k-); case 3: printf(%dn,k-); case 4: printf(%dn,k-); break; default: printf(Full!n); A) 3 B) 3 2 C) 2 D) 2 118、分别输入10和30,运行的结果分别是( C )。 #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 y=-2 B) y=10 y=10 C) y=10 y=5 D) y=0 y=-219、对于for(表达式1;表达式3)可理解为( B )。A) for(表达式1;0;表达式3)B) for(表达式1;1;表达式3)C) for(表达式1;表达式1;表达式3)D) for(表达式1;表达式3;表达式3) 20、以下程序段的输出结果是( D )。 int k,j,s; for(k=2;k6;k+,k+) s=1; for(j=k;j6;j+) s+=j; printf(%dn,s);A) 1 B) 9C) 11 D) 1021、以下程序段的输出结果是(C )。 int k,n,m; n=10;m=1;k=1; while (k=n) m*=2;k+=4; printf(%dn,m);A) 4 B) 16C) 8 D) 32 22、下面函数的功能是根据以下的公式,返回满足精度要求的值,请填空。 1 1 2 1 2 3 1 2 3 4 = 1+ + + + + 2 3 3 5 3 5 7 3 5 7 9#includevoid main( ) double esp,s=0.0, t=1.0; int n; scanf(%f,&esp); for(_; tesp; n+) _; t=n*t/(2*n+1); s=2*s; printf(s=%fn,s); A) n=1 B) t=1 s+=t s=s/tC) t=1 D) n=1.0 s=s+t t+=s正确答案是: A23、下面程序段的运行结果是( )。 int x=0,y=0; while (x15) y+,x+=+y; printf(%d,%d,y,x);A) 20,7 B) 6,12C) 20,8 D)8,20 正确答案是: D24、以下程序运行后的输出结果是( )。 #include void main( ) int s=0,k; for(k=7;k=0;k-) switch(k) case 1: case 4: case 7: s+; break; case 2: case 3: case 6: break; case 0: case 5: s+=2; break; printf(s=%dn,s); A)s=5 B)s=1C)s=3 D)s=7正确答案是: D25、下列程序的输出结果是( )。 #include void main( ) int i, j, m=0, n=0; for(i=0; i2; i+) for(j=0; j=i) m=1; n+; printf(%d n,n); A) 4 B) 2C) 1 D) 0正确答案是: C26、有以下程序段: s=1.0; for(k=1;k=n;k+) s=s+1.0/(k*(k+1); printf(%fn,s);请填空,使下面的程序段的功能完全与之等同。 s=0.0; d=1.0; k=0; do s=s+d; _; d=1.0/(k*(k+1); while(_); printf(%fn,s);A) k+ B) k=k+1 kn kn k=n 正确答案是: 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、下列程序段的输出结果是_。#include void main() char b=Hello,you; b5=0; printf(%sn,b); A) Hello,you B) HelloC) Hello0you D) H正确答案是: B29、请读程序片段(字符串内没有空格字符): printf(%dn,strlen(ATSnt0121);上面程序片段的输出结果是_。A) 11 B) 10C) 9 D) 8正确答案是: D30、请读程序:#include void main() int i,j,k ,n2 ; for(i=0;i2;i+) ni=0; k=2; for(i=0;ik;i+) for(j=0;jk;j+) nj=ni+1; printf(%dn,nk); 上面程序的输出结果是_。A) 不确定的值 B) 3C) 2 D) 1正确答案是: A31、有以下程序:#include #define N 6void main() char cN;int i=0; for(;iN;ci=getchar(),i+); for(i=0;iN;putchar(ci),i+); 输入以下三行,每行输入都是在第一列上开始,代表一个回车符:abcdef程序的输出结果是_。A) abcdef B) a b c d e fC) a D) a b b cd cdef正确答案是: C32、设有如下的程序段: char str=Hello; char ptr20; strcpy(ptr,str);执行完上面的程序段后,ptr5的值为_。A) o B) 0C) 不确定的值 D) o的ASCII码正确答案是: B33、下列一组初始化语句中,正确的是_。A) int a8= ; B) int a9=0,7,0,4,8;C) int a5=9,5,7,4,0,2; D) int a7=7*6;正确答案是: B34、下面程序运行时,从键盘输入Would youlike thisbird?若要使程序输出Would you like this bird?,则空白处应选择_。#include void main( ) char s110,s210,s310,s410; scanf(%s%sn,s1,s2); _; printf(%s %s %s %sn,s1,s2,s3,s4); A) scanf(%sn,s3);scanf(%sn,s4);B) gets(s3); gets(s4);C) scanf(%s%sn,s3,s4);D) gets(s3,s4);正确答案是: B35、下面程序的功能是_。#include void main() char s =father; int i,j=0; for(i=1;isi) j=i; printf(%c,%dn,sj,j+1); A) 输出字符数组s中ASCII码最大的字符及位置B) 输出字符数组s中ASCII码最小的字符及位置C) 输出字符数组s中ASCII码最大的字符及字符串的长度D) 输出字符数组s中ASCII码最小的字符及字符串的长度正确答案是: B36、下面程序运行后,输出结果是_。#include void main( ) int a10=1,2,3,4,5,6,i,j; for(i=0;i+3;) 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正确答案是: D37、有如下程序 int func(int a,int b) return(a+b); void main() int x=2,y=5,z=8,r; r=func(x-y),z); printf(%dn,r); 该程序的输出结果是_。A) 10 B) 13C) 5 D) 15正确答案是: C38、以下程序的输出结果是 #include void fun( char s) int x,y; char c; for(x=0,y=strlen(s)-1; xy;x+,y-) c=sy;sy=sx;sx=c; void main() char a=123456789; int k; fun(a); puts(a); A) 987654321 B) 123456789C) 123454321 D) 987656789正确答案是: A39、以下程序输出的结果是_。 #include int fun(int n) int s; if(n=1|n=2) s=2; else s=n-fun(n-1); return s; void main() printf(%dn,fun(5);A) 1 B) 2C) 3 D) -4正确答案是: B40、请读程序: #include int f(int b ,int n) int i,r; r=1; for (i=0;i=n;i+) r=r*bi; return r; void main() int x,a=2,3,4,5,6,7,8,9; x=f(a,4); printf(%dn,x); 上面程序的输出结果是_。A) 720 B) 120C) 24 D) 6正确答案是: A41、有以下程序#include int func(int a,int b) static int m=0,i=2; i=m+1; m=i+a+b; return(m); void main()int k=4,m=1,p; p=func(k,m); printf(%d, ,p); p=func(k,m); printf(%dn,p); 输出结果是_。A) 6,6 B) 6,12C) 6,8 D) 8,8正确答案是: B42、请读程序:#include int func(int a,int b) int c; c=a+b; return c; void main() int x=6,y=7,z=8,r; r=func(x-,y+,x+y),z-); printf(%dn,r); 上面程序的输出结果是_。A) 11 B) 20C) 21 D) 31正确答案是: C43、设有如下程序#include float ggg(x)float x; return (x*x);void main() printf(_n,ggg(1.2); 则划线处应填_。A) %f B) %ldC) %d D) 无法确定正确答案是: A44、以下程序的功能是根据输入的字母,在屏幕上显示出字符数组中首字符与其相同的字符串,若不存在,则显示“No find,goodbye!”。程序中两处划线位置应填入_。#include char PriStr(char ch1) int i=0,j=0; static char ch2 20=How are you,Glad to meet you,Anything new,Every thing is fine,Very well,thank you,See you tomorrow;while(i+6) if(ch1= ch2i-10) puts(_); j=1; return j; void main( ) char ch3; printf(nEnter a char: ); ch3=getchar( ); ch3=PriStr(ch3); if( ch3=_) puts(No find,goodbye!); A) ch2i-1和0 B) ch2i和0C) ch2i0和0 D) ch2i-10和0正确答案是: A45、下面程序计算1至m的阶乘并依次输出。程序划线处应填入_。#include double result=1;fac(int j) result=result*j; return; void main( ) int m,i=0; printf(Enter an integer:); scanf(%d,&m); for(i=1;i=m;i+) fac(i); printf(%d!=%.0fn,_); A) i,result B) i,fac(i)C) fac(i), i D) result,i正确答案是: A 选择题(共 题),成绩()1、以下叙述正确的是:A) 在C程序中,主函数必须位于程序的最前面B) 在C程序中,一行只能写一条语句C) C程序的基本结构是程序行D) C语句是完成某种程序功能的最小单位正确答案是: D2、设有说明:char w; int x; float y; double z; 则表达式: w*x+z-y值的数据类型是:A) float B) charC) int D) double正确答案是: D3、a,b均为整数,且b!=0,则表达式a/b*b+a%b的值是:A) a B) bC) a被b除的整数部分 D) a被b除的商的整数部分正确答案是: A4、设有如下变量定义: int i=8,k,a,b; unsigned w=5;double x=1.42, y=5.2;则以下符合C语言语法的表达式是:A) a+=a-=(b=4)*(a=3) B) x%(-3)C) a=a*3=2 D) y=float(i)正确答案是: A5、已知有double型变量x=2.5,y=4.7,整型变量a=7,则表达式 x+a%3*(int)(x+y)%2/4 的值是:A) 2.4 B) 2.5C) 2.75 D) 0正确答案是: B6、阅读下面的程序#includevoid main() int i,j; i=010; j=9; printf(%d,%d,i-j,i+j); 则程序的运行结果是:A) 1,19 B) -1,19C) 1,17 D) -1,17正确答案是: D7、阅读下面的程序#includevoid main() char ch; scanf(%3c,&ch); printf(%c,ch);如果从键盘上输入 abc则程序的运行结果是:A) a B) bC) c D) 程序语法出错正确答案是: A8、请读程序: #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正确答案是: C9、已知字母A的ASCII码为十进制的65,下面程序的输出是#includevoid main()char ch1,ch2; ch1=A+5-3; ch2=A+6-3; printf(%d,%cn,ch1,ch2);A) 67,D B) B,C C) C,D D) 不确定的值正确答案是: A10、设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是A) a&b B) a=bC) a|b+c&b-c D) !(a=y)&(y=z) B) (x=y)AND(y=z)C) (x=y=z) D) (x=y) | (y=z)正确答案是: A12、表达式: 10!=9的值是A) true B) 非零值C) 0 D) 1正确答案是: D13、能正确表示a10或a0的关系表达式是A) a=10 or a=10 | a =10 & a=10 | a=0正确答案是: D14、若有以下定义: int a,b,c1,c2,x,y; 则正确的switch 语句是A) switch(a+b); B) switch(a*a+b*b) case 1:y=a+b;break; case 3: case 2:y=a-b;break; case 1:y=a+b;break; case 3:y=b-a;break; C) switch a D) switch(a-b) case c1:y=a-b;break; default:y=a*b;break; case c2:y=a*d;break; case 3: default:x=a+b; case 4:x=a+b;break; case 10: case 11:y=a-b;break; 正确答案是: D15、设a=1,b=2,c=3,d=4,则表达式: ab?a:c0?1:x0) y=1; B) if(x) else if (x0) y=1; else y=0; else if (x=0) if (x0) y=1; if (x0) y=1; else if (x=0) y=0; else y=-1; else y=-1; 正确答案是: A17、运行下面程序时,从键盘输入字母H,则输出结果是( )。 #include void main( ) char ch; ch=getchar( ); switch(ch) case H:printf(Hello!n); case G:printf(Good morning!n); default:printf(Bye_Bye!n); A) Hello! B) Hello! Good Morning!C) Hello! D) Hello! Good morning! Bye_Bye! Bye_Bye!正确答案是: C18、以下程序的运行结果是( )。 #include void main( ) int x=3,y=4,z=4; printf(%d,(x=y=z)?1:0); printf(%dn,z=y & y=x); A) 0,1 B) 1,0C) 1,1 D) 0,0正确答案是: A19、C语言中while 和do-while 循环的主要区别是( )。A) do-while的循环体至少无条件执行一次B) while 的循环控制条件比do-while 的循环控制条件严格C) do-while 允许从外部转到循环体内D) do-while 的循环体不能是复合语句正确答案是: A20、对下面程序段,描述正确的是( )。 for(t=1;t=100;t+) scanf(%d,&x); if (x0) continue; printf(%dn,t); A) 当x=0时,什么也不输出C) printf函数永远也不执行D) 最多允许输出100个非负整数正确答案是: D21、若有以下程序段,w和k都是整型变量: w=k; while(w) w-; printf(*);则不能与上面程序段等价的循环语句是A) for(w=k;w!=0;-w) B) w=k; while(w-!=0) printf(*); printf(*);w+;C) w=k; dow-; D) for(w=k;w;-w) printf(*);while(w!=0) printf(*);正确答案是: C22、以下程序段的执行结果是( )。 int i,j,m=0; for(i=1;i=15;i+=4) for(j=3;j=19;j+=4) m+; printf(%dn,m);A) 12 B) 15C) 20 D) 25 正确答案是: C23、以下程序运行后的输出结果是( )。 #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、以下函数的功能是:求x的y次方,请填空。 #include void main() int i,x,y; double z; scanf(%d %d,&x,&y); for(i=1,z=x;iy;i+) z=z*_ ; printf(xy=%en,z); A) i+ B) x+C) x D) i正确答案是: C25、下面程序的运行结果是( )。 #include void main() int s=0,i=1; while (s=10) s=s+i*i; i+; printf(%d,-i); A) 4 B) 3C) 5 D) 6正确答案是: B26、当从键盘上输入字符“12134211”下面程序的输出结果是( )。 #include void main() char s; int v1=0,v2=0,v3=0,v4=0,k; for(k=0;k=7;k+) scanf(%c,&s); switch(s) default: v4+; case 1: v1+; case 3: v3+; case 2: v2+; printf(v1=%d,v2=%d,v3=%d,v4=%dn,v1,v2,v3,v4); A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1C) v1=5,v2=8,v3=6,v4=1 D) v1=8,v2=8,v
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年多级飘尘采样计项目合作计划书
- 2025年地震专用仪器项目发展计划
- 2025年全自动变焦照相机项目合作计划书
- 2025年纳迪克酸酐项目发展计划
- 2025年视窗防护屏项目发展计划
- 教师学习报告范文
- 教练实践报告范文
- 二零二五年度俩人合作开设网络直播平台合伙合同
- 电器厂三季度安全事故应急预案
- 新银行理财经理年度总结
- 黑龙江省哈尔滨市南岗区2024-2025学年九年级上学期期末考试英语试题(含答案)
- 残疾人就业培训
- Photoshop+2024学习手册:第1课认识与操作基础
- 《不同血流限制训练方案对膝关节损伤运动员下肢功能的影响》
- 药品经营企业(批发和零售)面临的风险点和应对措施
- 基本公共卫生服务项目培训
- 北师大版(2024新版)七年级上册数学期末模拟测试卷(含答案)
- 无人机组装与调试 课件 项目1任务1 多旋翼无人机飞行平台组装调试
- 消防行业岗位培训与校企联合方案
- 中国通 用技术集团招聘笔试题库
- 自动化部门的发展规划
评论
0/150
提交评论