C语言题库汇总(.5)_专升本c语言题库汇总

其他范文 时间:2020-02-27 18:37:39 收藏本文下载本文
【www.daodoc.com - 其他范文】

C语言题库汇总(.5)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“专升本c语言题库汇总”。

《C语言程序设计》

题 库 汇 编

信息技术学院 计算机基础教学部

二O一一年五月

(内部资料)

第一章

一、填空 共5题(共计5分)第1题(1.0分)题号:521 结构化程序中,有三种结构:顺序结构,【选择结构】,循环结构.第2题(1.0分)题号:522 一个用C语言编写的程序在运行时,如果没有发生任何异常情况,则只有在执行了【main】函数的最后一条语句或该函数中的return语句后,程序才会终止运行.第3题(1.0分)题号:518 C程序中有且仅有一个【主】函数.第4题(1.0分)题号:519 C语言程序由【函数】组成.第5题(1.0分)题号:165 程序流程图只有一个起点和【一】个终点.二、单项选择 共4题(共计4分)第1题(1.0分)题号:20 要调用文件处理函数时,在#include 命令行中应包含().A:“ctype.h” B:“string.h” C:“stdio.h” D:“math.h” 第2题(1.0分)题号:30 在C语言中,错误的语句是().A:a=b=c;B:;C:break D:b=3*5,a*=4;第3题(1.0分)题号:206 完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为().A:连接、编译 B:编译、连接 C:连接、运行 D:运行 第4题(1.0分)题号:208 C语言程序从main()函数开始执行,所以这个函数要写在().A:程序文件的开始 B:程序文件的最后 C:程序文件的任何位置(除别的函数体内)D:它所调用的函数的前面

第二章

一、填空 共15题(共计15分)第1题(1.0分)题号:525 C语言中一个单精度浮点型数据占【4】个字节.第2题(1.0分)题号:202 在C语言的源程序中若出现常量“1L”,则该常量的类型是【长整型】.第3题(1.0分)题号:317 在TC中,语句序列int k=-1;printf(“%u”,k);的输出结果为【65535】.第4题(1.0分)题号:200 C语言中为整型数据(int)分配【2】个字节的存储空间.第5题(1.0分)题号:316 已知有声明float d=1;double f=1;long g;和语句printf(“ ”,g=10+'i'+(int)d*f);,为了正确地以十进制形式输出printf参数表中第二个参数(表达式)的值,则在第一个参数中的下划线位置处应填写的格式转换说明符是【%ld】.第6题(1.0分)题号:203 在C语言中,字符型数据在内存中以【美国标准信息交换】码形式存放.第7题(1.0分)题号:264 只有在程序运行时才为【自动】存储类型和register存储类型变量分配内存.第8题(1.0分)题号:318 现有语句#define a 5+3,则表达式2*a的结果为【13】.第9题(1.0分)题号:248 C语言中,逻辑值“真”用【1】表示.第10题(1.0分)题号:238 执行“printf(”%d,%d“,i,j,k,m);”后将在屏幕上输出【2】个整数.第11题(1.0分)题号:201 在Turbo C2.0系统中,若将实型常数1.5存储在内存中,它占用【8】个字节.第12题(1.0分)题号:523 整型变量x的值为23,语句“printf(″%on″,x);”的输出结果为【27n】.第13题(1.0分)题号:315 从变量的作用域角度分有全局变量和【局部变量】.第14题(1.0分)题号:176 已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-'3'的值为【102】.第15题(1.0分)题号:533 变量从存储的时间来分可分为【静态变量】和动态变量.二、单项选择 共23题(共计23分)第1题(1.0分)题号:590 若有宏定义“#define p(x,y,z)x=y*z;”,则宏替换“p(a,x+5,y-3.1);”应为语句()。A:a=x+5*y-3.1;B:a=(x+5)*(y-3.1);C:a=x+5*y-3.1 D:a=(x+5)*(y-3.1)第2题(1.0分)题号:216 下列程序的输出是().#include main(){ printf(“%d”,NULL);} 2 A:0 B:变量无定义 C:-1 D:1 第3题(1.0分)题号:215 在main函数体内部和外部均允许出现的实体是().A:预处理命令 B:语句 C:另一函数的定义 D:函数形式参数声明 第4题(1.0分)题号:222 下面正确的字符常量是().A:“c” B:''' C:'W' D:'ab' 第5题(1.0分)题号:39 若变量都已正确说明,则以下程序段().a=2;b=3;printf(a>b?“***a=%d”:“###b=%d”,a,b);

A:没有正确的输出格式控制 B:输出为:***a=2 C:输出为:###b=2 D:输出为: ***a=2###b=3 第6题(1.0分)题号:71 以下所列的C语言常量中,错误的是().A:0Xff B:1.2e0.5 C:2L D:'72' 第7题(1.0分)题号:211 已知宏定义 #define N 3 #define Y(n)((N+1)*n)执行语句z=2*(N+Y(5+1));变量z的值为().A:42 B:48 C:54 D:出错 第8题(1.0分)题号:218 下列选项中,合法的C语言关键字是().A:VAR B:cher C:integer D:default 第9题(1.0分)题号:226 若x,y 均定义为 int 型,z 为 double 型 ,以下不合法的 scanf 函数调用语句是()。A:scanf(“%d%d,%lf”,&x,&y,&z);B:scanf(“%x,%d,%lf”,&x,&y,&z);C:scanf(“%d,%x,%lf”,&x,&y,&z);D:scanf(“%d,%d,%x”,&x,&y,&z);第10题(1.0分)题号:152 正确的自定义标识符是().A:if B:a*b C:iF D:8pq 第11题(1.0分)题号:228 在C程序中,1如果用来表示逻辑值时,应代表().A:真 B:假 C:整数1 D:长整型数1 第12题(1.0分)题号:586 以下所列字符常量中,不合法的是().A:'xa2' B:'65' C:'$' D:'x2a' 第13题(1.0分)题号:221 下列格式符中,可以用于以8进制形式输出整数的是().A:%d B:%8d C:%o D:%1d 第14题(1.0分)题号:165 以下不正确的C语言标识符是().A:2y B:a_1_2 C:ablexe D:_x 3 第15题(1.0分)题号:193 以下答案中不是C语言最基本数据类型的是().A:逻辑型 B:整型 C:字符型 D:实型 第16题(1.0分)题号:227 以下四个字符序列中,能用作用户自定义的标识符是().A:Putchar B:-double C:A123-D:int 第17题(1.0分)题号:234 以下叙述中正确的是().A:输入项可以是一个实型常量,如: scanf(“%f”,3.5);B:只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf(“a=%d ,b=%d”);C:当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:scanf(“%4.2f”,&d);D:当输入数据时,必须指明变量地址,例如: scanf(“%f”,&f);第18题(1.0分)题号:220 常数的书写格式决定了常数的类型和值,0x1011是().A:8进制整型常量 B:字符常量 C:16进制整型常数 D:2进制整型常数 第19题(1.0分)题号:78 使用语句scanf(“x=%f,y=%f”,&x,&y);输入变量x,y的值([]代表空格),正确的输入是().A:1.25,2.4 B:1.25[]2.4 C:x=1.25,y=2.4 D:x=1.25[]y=2.4 第20题(1.0分)题号:77 若变量已正确说明为float类型,要通过语句scanf(“%f %f %f ”,&a,&b,&c);给a赋于10.0, b赋予22.0,c赋予33.0,不正确的输入形式是().A:102233 B:10.0,22.0,33.0 C:10.022.0 33.0 D:10 2233 第21题(1.0分)题号:587()是C语言提供的合法数据类型关键字.A:Float B:signed C:integer D:Char 第22题(1.0分)题号:232 设有说明语句 char a='101';,则变量a().A:包含4个字符 B:包含2个字符 C:包含3个字符 D:包含1个字符 第23题(1.0分)题号:217 下述程序段的输出结果是().int x=10;int y=x++;printf(“%d,%d”,(x++,y),y++);A:11,10 B:11,11 C:10,10 D:10,11 4

第三章

一、填空 共32题(共计32分)第1题(1.0分)题号:978 若x为int型,请以最简单的形式写出与逻辑表达式!x等价的C语言关系表达式【x==0】.第2题(1.0分)题号:989 若有定义:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为【5.5】.第3题(1.0分)题号:334 计算a、b中最小值的条件表达式为【ab?a++:++b的值为【4】.第13题(1.0分)题号:332 以下十个运算符+!b?a:b+1的值是【3】.第15题(1.0分)题号:329 若a=1,b=4,c=3,则表达式a&&b+c||b-c的值为【1】.第16题(1.0分)题号:347 若x为int型变量,执行以下语句后x值是【-6】.x=3;x+=x-=x+x;第17题(1.0分)题号:325 关系、算术、赋值三种运算符的运算优先顺序由高到低为【算术】、【关系】、【赋值】.第18题(1.0分)题号:1001 表达式 a=3,a++,--a的值为【3】.第19题(1.0分)题号:326 执行语句“a=5+(c=6);”后,变量a、c的值依次为【11】、【6】。第20题(1.0分)题号:982 已知char w;int x;float y;double z;则表达式:w*x+z-y所求得的数据类型为【double型】.第21题(1.0分)题号:336 表达式3>2>1的值是【0】.第22题(1.0分)题号:999 s=3,s++,s;这个语句执行完后,s的值为【4】.第23题(1.0分)题号:344 执行语句序列“char x=3,y=6,z;z=x^y

第27题(1.0分)题号:991 C语言中的表达式只能由三种字符组成,他们是字母、数字和【下划线】.第28题(1.0分)题号:980 设有程序段 int x= 4,y=4;t=++x||++y;执行语句后y的值为【4】.第29题(1.0分)题号:996 条件”2020&&xb?c:d的值为【4】.第31题(1.0分)题号:319 判断变量a、b的值均不为0的C表达式为【a*b!=0】.第32题(1.0分)题号:1008 设有下面的程序段 int x= 0,y=0,t;t=x&&++y;执行语句后y的值为【0】.二、单项选择 共26题(共计26分)第1题(1.0分)题号:602 下面程序的输出是().main(){ int x=10,y=3;printf(“%dn”,x/y);} A:0 B:1 C:3 D:不确定的值 第2题(1.0分)题号:375 下列关于C语言的叙述,错误的是().A:大写字母和小写字母的意义相同 B:不同类型的变量可以在一个表达式中 C:在赋值表达式中等号(=)左边的变量和右边的值可以是不同的类型 D:同一个运算符号在不同的场合可以有不同的含义 第3题(1.0分)题号:246 若x、i、j和k都是int型变量,由x=(i=4,j=16,k=32)得x的值().A:4 B:16 C:32 D:52 第4题(1.0分)题号:596 设有说明“int x=3,y=4;”,则“++x>y--?x:y”的值为().A:4 B:1 C:2 D:3 第5题(1.0分)题号:609 6 执行语句“k=5|3;”后,变量k的当前值是().A:1 B:8 C:7 D:2 第6题(1.0分)题号:257 设 int x=1, y=1;表达式(!x||y--)的值是().A:0 B:1 C:2 D:-1 第7题(1.0分)题号:326 已知int i=10;执行表达式“i||(i=12)”后i的值是().A:10 B:1 C:12 D:0 第8题(1.0分)题号:240 设有说明“int x=1,y=1,z=1,c;”,执行语句“c=--x&&--y||--z;”后,x、y、z的值分别为().A:0、1、1 B:0、0、1 C:1、0、1 D:0、1、0 第9题(1.0分)题号:617 已知int a =15;执行语句a=2)且(x=2)AND(x=2)&&(x='A'&&ch

第四章

一、填空 共19题(共计19分)第1题(1.0分)题号:366 以下程序运行后的输出结果是【yes】.main(){ int a=1, b=3;if(a+b)printf(“yesn”);else printf(“non”);} 第2题(1.0分)题号:370 以下程序输出的结果是【0】.main(){ int a=5,b=4,c=3,d;d=(a>b>c);printf(“%dn”,d);} 第3题(1.0分)题号:356 下列程序的功能是输入一个整数,判断是否是素数,若为素数输出1,否则输出0,请填空.main(){int i, x, y=1;scanf(“%d”, &x);for(i=2;ij共执行的次数是【6次】 main(){int i=0, j=10, k=2, s=0;for(;;){i+=k;if(i>j){printf(“%d”,s);break;}s+=i;} } 第6题(1.0分)题号:369 若从键盘输入58,则以下程序输出的结果是 【585858】。main(){ int a;scanf(“%d”,&a);if(a>50)printf(“%d”,a);if(a>40)printf(“%d”,a);if(a>30)printf(“%d”,a);} 9 第7题(1.0分)题号:371 有如下程序 main(){ float x=2.0,y;if(x10.0)y=1.0/x;else y=1.0;printf(“%fn”,y);} 该程序的输出结果是【1.000000】.第8题(1.0分)题号:360 假定所有变量均已正确说明,下列程序段运行后x的值是【4】

a=b=c=0;x=35;if(!a)x--;else if(b);if(c)x=3;else x=4;第9题(1.0分)题号:357 有以下程序 main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf(“%dn”,d);else if((c-1>=d)==1)printf(“%dn”,d+1);else printf(“%dn”,d+2);} 执行后输出结果是 【3】。第10题(1.0分)题号:358 阅读以下程序: main(){ int x;scanf(“%d”,&x);if(x--

第11题(1.0分)题号:352 执行语句“n=1;if(n=5)n++;”后,变量n值为6】.第12题(1.0分)题号:363 以下程序运行后的输出结果是 【10 20 0】 main(){ int a,b,c a=10;b=20;c=(a%b1);printf(“%d %d %dn”,a,b,c);} 10 第13题(1.0分)题号:362 以下程序运行后的输出结果是 【1】.main(){ int a=1,b=2,c=3;if(c=a)printf(“%dn”,c);else printf(“%dn”,b);} 第14题(1.0分)题号:367 若有以下程序 main(){ int p,a=5;if(p=a!=0)printf(“%dn”,p);else printf(“%dn”,p+2);} 执行后输出结果是【1】。第15题(1.0分)题号:359 以下程序输出结果是 【5】 main(){ int m=5;if(m++>5)printf(“%dn”,m);esle printf(“%dn”,--m);} 第16题(1.0分)题号:365 以下程序运行后的输出结果是 【3】.main(){ int p=30;printf(“%dn”,(p/3>0 ? p/10 : p%3));} 第17题(1.0分)题号:1029 有如下程序 main(){ float x=2.0,y;if(x10.0)y=1.0/x;else y=1.0;printf(“%.2fn”,y);} 该程序的输出结果是【1.00】.第18题(1.0分)题号:364 有以下程序 main(){ int n=0,m=1,x=2;if(!n)x-=1;if(m)x-=2;if(x)x-=3;printf(“%dn”,x);} 11 执行后输出结果是【-4】 第19题(1.0分)题号:354 若执行以下程序时从键盘上输入9,则输出结果是【10】

main(){ int n;scanf(“%d”,&n);if(n++

二、单项选择 共18题(共计18分)第1题(1.0分)题号:378 下列________结构不是C程序的结构? A:顺序结构 B:循环结构 C:程序结构 D:选择结构 第2题(1.0分)题号:385 以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是()A:if((a>b)&&(b>c))k=1;B:if((a>b)||(b>c))k=1;else k=0;else k=0;C:if(ab)k=1;else if(bc)k=1; else k=0;第3题(1.0分)题号:397 若k是int型变量,且有下面的程序片段: k=-3;if(kb)s=b;s=s*s;printf(“%dn”,s);} 12 A:9 B:16 C:3 D:4 第7题(1.0分)题号:639 有以下程序 #include main(){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf(“%d,%dn”,a,b);} 输出结果是()A:2,1 B:3,2 C:4,3 D:2,-1 第8题(1.0分)题号:392 有以下程序 main(){ int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf(“%d %d %dn”,i,j,k);} 程序运行后的输出结果是()A:1 2 3 B:2 3 4 C:2 2 3 D:2 3 3 第9题(1.0分)题号:628

与语句if(a>b)if(c>d)x = 1;else x = 2;等价的是()A:if(a>b){if(c>d)x = 1;else x = 2;} B:if(a>b){if(c>d)x = 1;} else x = 2;C:if((a>b)&&(c>d))x = 1;else x = 2;D:if(ad)x = 1;第10题(1.0分)题号:383 下列程序段中,能将变量x、y中值较大的数保存到变量a,值较小的数保存到变量b的程序段是______.A:if(x>y)a=x;b=y;else a=y;b=x;B:if(x>y){a=x;b=y;} else a=y;b=x;C:if(x>y){a=x;b=y;} else {a=y;b=x;} D:if(x>y){a=x;b=y;} else(xb)c=a,a=b,b=c;B:if(a>b){c=a,a=b,b=c;} C:if(a>b)c=a;a=b;b=c;D:if(a>b){c=a;a=b;b=c;} 第12题(1.0分)题号:635 有以下程序 main(){ int a,b,d=25;a=d/10%9;b=a&&(-1);printf(“%d,%dn”,a,b);} 程序运行后的输出结果是()A:6,1 B:2,1 C:6,0 D:2,0 第13题(1.0分)题号:393 13 有以下程序 main(){ int a=3,b=4,c=5,d=2;if(a>b)if(b>c)printf(“%d”,d++ +1);else printf(“%d”,++d +1);printf(“%dn”,d);} 程序运行后的输出结果是()A:2 B:3 C:43 D:44 第14题(1.0分)题号:386 有如下程序 main(){int a=2,b=-1,c=2;if(a5)printf(“%dn”,a);else printf(“%dn”,--a);} A:6 B:7 C:5 D:4 第16题(1.0分)题号:384 与第9题重复(已删除)第17题(1.0分)题号:380 下列程序段执行后输出结果为()int i=-1;if(i

#include main(){int n=2,k=0;while(k++&&n++>2);printf(“%d%dn”,k,n);} 程序运行后的输出结果是【12】.第9题(1.0分)题号:1034 执行语句“s=0;n=5;while(--n)s+=n;”后,变量s 的值为【10】.第10题(1.0分)题号:380 有如下程序 main(){int a=2,b=-1,c=2;15 if(a6){n--;printf(“%d”,n);}} 该程序的输出结果是【876】.第15题(1.0分)题号:388 下面程序的运行结果是【a=2,b=8】.#include main(){ int a=1,b=10;16 do { b-=a;a++;}while(b--

二、单项选择 共37题(共计37分)第1题(1.0分)题号:424 有以下程序段 int n=0,p;do {scanf(“%d”,&p);n++;} while(p!=12345&&n

D:for循环的循环体语句中,可以包含多条语句,必须用花括号括起来 第4题(1.0分)题号:421 有以下程序 main(){ int k=4,n=0;for(;n;){ n++;if(n%3!=0)continue;k--;} printf(“%d,%dn”,k,n);} 程序运行后的输出结果是().A:1,1 B:2,2 C:3,3 D:4,0 第5题(1.0分)题号:422 读下列程序: main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1: switch(y){ case 0: a++;break;case 1: b++;break;} case 2: a++;b++;break;} printf(“a=%d, b=%dn”,a,b);} 输出结果是().A:a=2,b=1 B:a=1,b=1 C:a=1,b=0 D:a=2,b=2 第6题(1.0分)题号:1621 下述循环的循环次数是()int k=2;while(k=0)printf(“%d”,k);k--;printf(“n”);A:0次 B:1次 C:2次 D:无限次 第7题(1.0分)题号:1624 执行下列程序段后,变量i的值是()int i=10;switch(i){ case 9:i+=1;case 10:i+=1;18 case 11:i+=1;default:i+=1;} A:13 B:12 C:11 D:14 第8题(1.0分)题号:1627 以下关于语句的说法中正确的是: A:do-while 语句的循环体至少会被执行1次 B:while语句的循环体至少会被执行1次 C:for语句的循环体至少会被执行1次 D:在C语言中只能用do,do-while,for语句实现循环 第9题(1.0分)题号:1617 设I和k都是int类型,则for循环语句().for(I=0,k=-1;k=1;I++,k++)printf(“****n”);A:判断循环结束的条件不合法 B:是无限循环 C:循环体一次也不执行 D:循环体只执行一次 第10题(1.0分)题号:1643 C语言中用于结构化程序设计的3种基本结构是()A:顺序结构、选择结构、循环结构 B:if,switch,break C:for,while,do-while D:if,for,continue 第11题(1.0分)题号:425 有以下程序 main(){int a=15,b=21,m=0;switch(a%3){case 0:m++;break;case 1:m++;switch(b%2){default:m++;case 0:m++;break;} } printf(“%dn”,m);} 程序运行后的输出结果是().A:1 B:2 C:3 D:4 第12题(1.0分)题号:404 执行语句: for(i=1;i++1;n--)s=s+1/n;printf(“%6.4fn”,s);} 程序运行后输出结果错误,导致错误结果的程序行是()A:s=1.0;B:for(n=10;n>1;n--)C:s=s+1/n;D:printf(“%6.4fn”, s);第15题(1.0分)题号:1620 以下循环体的执行次数是______.main(){ int i, j;for(i=0,j=1;ij共执行的次数是()main(){ int i=0,j=10,k=2,s=0;for(;;){ i+=k;if(i>j){ printf(″%d″,s);break;}s+=i;} } A:4 B:7 C:5 D:6 第18题(1.0分)题号:1622 下列循环语句中有语法错误的是()A:while(x=y)5;B:while(0);C:do 2;while(x=0);D:do x++

while(x=0);while(x= =10)第19题(1.0分)题号:1630 已知int t=0;while(t=1){…}

则以下叙述正确的是().A:循环控制表达式的值为0 B:循环控制表达式的值为1 20 C:循环控制表达式不合法 D:以上说法都不对 第20题(1.0分)题号:399 当处理特定问题,循环次数已知时,通常采用()解决.A:for循环 B:while循环 C:do循环 D:switch语句 第21题(1.0分)题号:427 以下程序段的描述,正确的是()x=-1;do {x=x*x;}while(!x);A:是死循环 B:循环执行两次 C:循环执行一次 D:有语法错误 第22题(1.0分)题号:1628 下面关于循环语句for、while、do-while的叙述中正确的是().A:三种循环语句的循环体都必须放入一对花括号中 B:三种循环语句中都可以缺省循环终止条件表达式 C:三种循环语句的循环体都至少被无条件执行一次 D:三种循环语句都可能出现无穷循环 第23题(1.0分)题号:431 以下描述中正确的是()A:由于do-while循环中循环体语句只能是可执行语句,所以循环体内不能使用复合语句 B:do-while循环由do开始,用while结束,在while(表达式)后面不能写分号 C:在do-while循环体中,是先执行一次循环,再进行判断 D:do-while循环中,根据情况可以省略while 第24题(1.0分)题号:408 已知 int i=1;执行语句while(i++1;i--)for(j=0;j

A:20 B:261 C:15 D:25 第26题(1.0分)题号:403 若k为整型,则while循环().k=10;while(k=0)k=k-1;

A:执行10次 B:无限循环 C:一次也不执行 D:执行一次 第27题(1.0分)题号:411 下面的for语句()for(x=2,y=8;(y>0)&&(x=i;)sum+=++i;B:for(;;x+=i);C:for(y=0,x=1;x>++y;x=i++)i=x;D:while(x=8)x--;第31题(1.0分)题号:1615 下列保留字中用于构成循环结构的是()A:if B:while C:switch D:default 第32题(1.0分)题号:1623 已知 int i=1;执行语句while(i++

第六章

一、填空 共32题(共计32分)第1题(1.0分)题号:1059 若有定义:int a[2][3]={{1},{2,3}},则初始化后,元素a[0][1]得到的初值是【0】.第2题(1.0分)题号:398 下列程序的输出结果是【3,5,7,】.main(){ int i,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i0){printf(“ ”);j--;} for(j=1;j

第4题(1.0分)题号:394 若声明“char a[15]=”Windows-9x“;”,语句“printf(”%s“,a+8);”的输出结果为【9x】.第5题(1.0分)题号:1071 以下程序运行后,输出结果是【1 2 3 5 6 9】.main(){int a[3][3]={1,2,3,4,5,6,7,8,9},i,j;for(i=0;i main(){char ch[7]={“12ab56”};int i,s=0;for(i=0;ch[i]>='0'&&ch[i] main(){char a[]=“morning”,t;int i,j=0;for(i=1;i

else printf(″ Not found!n″,x);} 第13题(1.0分)题号:417 下面程序的功能是将字符数组a[6]={'a','b','c','d','e','f'}变为 a[6]= {'f','a','b','c','d','e'}.请填空.main(){ char t,a[6]={'a','b','c','d','e','f'};int i;【t=a[5];】

for(i=5;i>0;i--)【a[i]=a[i-1];】 a[0]=t;for(i=0;i #define N 8 void main(){ int i,j,pa[N]={1};printf(“%5dn”,pa[0]);for(i=1;i0;j--)pa[j]=pa[j]+pa[j-1];for(j=0;j

#include void main(){ int i,j,a[3][3];for(i=0;i

21】,第三行为【2 8 34】.for(i=0;i0)printf(“%3d”,a[i][j]);putchar('n');} } 第19题(1.0分)题号:399 输出数组a[10] 所有元素中的最大值.main(){ int a[10]={1,2,3,4,5,6,7,8,9,10};int j, max;【max=a[0]】;for(j=1;jmax)【max=a[j]】;}

printf(“max value is %dn”, max);} 第20题(1.0分)题号:404 以下程序输出的结果是【Good morning!】.#include main(){char a[20]=“Good morning!”,b[40];int i;for(i=0;a[i]!='';i++)b[i]=a[i];b[i]='';puts(b);} 第21题(1.0分)题号:401 若有定义:int a[2][3]={{1},{2,3}},则初始化后,元素a[0][1]得到的初值是【0】.第22题(1.0分)题号:1057 输出数组a[10] 所有元素中的最大值.main(){ int a[10]={1,2,3,4,5,6,7,8,9,10};int j, max;【max=a[0]】;for(j=1;jmax)【max=a[j]】;}

printf(“max value is %dn”, max);} 第23题(1.0分)题号:1060 设char string[ ] =″abc_d!″;则数组的长度应是【7】.第24题(1.0分)题号:1058 设a数组是m行n列的,则元素a[i][j]之前有【i*n+j】个元素.第25题(1.0分)题号:1050 本程序用改进的冒泡法对数组a[n]的元素从小到大排序,请在程序空白处填空.#define N 10 28 main(){int a[N]={10,7,43,1,9,6,3,8,5,2};int j,k,jmax,temp;【jmax=N-1】;do { k=0;for(j=0;ja[j+1]】){temp=a[j];a[j]=a[j+1];a[j+1]=temp;【k++】;} jmax=jmax-1;} while(jmax>0&&k);for(j=0;j main(){ int i=0;char a[ ]=“abm”,b[ ]=“aqid”,c[10];while(a[i]!=''&& b[i]!=''){ if(a[i]>=b[i])c[i]=a[i]-32;else c[i]=b[i]-32;++i;} c[i]='';puts(c);} 第29题(1.0分)题号:416 输入10个数据,对它们按从小到大的顺序进行选择排序.main(){ int a[11];int i,j,t;printf(“Input 10 numbers:n”);for(i=1;i

for(i= 【j+1】;i=0;i--)printf(“%d”,a[i]);} 第31题(1.0分)题号:402 设char string[ ] =″This_is_a_book!″;则数组的长度应是【16】.第32题(1.0分)题号:1061 设int a[2][3] = {{2},{3}};则数组元素a[1][0]的值为【3】.二、单项选择 共22题(共计22分)第1题(1.0分)题号:1654 若有声明“int i;float x;char a[50];”,为使i得到值1,x得到值3.1416,a得到值yz,当执行 语句“scanf(”%3d%f%2s“,&i,&x,a);”时,正确的输入形式是().A:1,3.1416,yz↙ B:13.1416yz↙ C:0013.1416yz↙

D:i=001,x=3.1416,a=yz↙ 第2题(1.0分)题号:1658 数组定义为int a[3][2]={1,2,3,4,5,6},数组元素()的值为6.A:a[3][2] B:a[2][1] C:a[1][2] D:a[2][3] 第3题(1.0分)题号:1662 不正确的字符串赋值或赋初值的方式是().A:char str[]=“string”;B:char str[7]={'s','t','r','i','n','g'};C:char str[10];str=“string”;D:char str[7]={'s','t','r','i','n','g', ''};第4题(1.0分)题号:1651 对两个数组a和b初始化如下: char a[ ]=“abc”;char b[ ]={'a','b','c'};则以下叙述正确的是().A:a与b数组完全相同 B:a与b数组长度相同 C:a与b中都存放字符串 D:a数组比b数组长度长 第5题(1.0分)题号:441 下列各语句定义了数组,其中一个不正确的是().A:static int a[5],b[2][3];B:char no[30],rec[30,6];C:int x[]={2,4,6,8,10};D:int x[10]={1,2,3,4,5};第6题(1.0分)题号:449 设int a[ ][4]={1,2,3,4,5,6,7,8};则数组a的第一维的大小是().A:2 B:3 C:4 D:无确定值 第7题(1.0分)题号:445 以下不能正确定义二维数组的选项是().A:int a[2][2]={{1},{2}};B:int a[][2]={1,2,3,4};C:int a[2][2]={{1},2,3};D:int a[2][]={{1,2},{3,4}};第8题(1.0分)题号:435 设有数组定义:char array[ ]=“China”;则数组array所占空间是().A:4个字节 B:5个字节 C:6个字节 D:7个字节 第9题(1.0分)题号:1652 对字符数组str赋初值,str不能作为字符串使用的是().31 A:char str[]=“shanghai” B:char str[10]={'s','h','a','n','g','h','a','i'} C:char str[]={“shanghai”} D:char str[8]={'s','h','a','n','g','h','a','i'} 第10题(1.0分)题号:1653 执行下列程序 main(){int a[3][3]={{1},{2},{3}};int b[3][3]={1,2,3};printf(″﹪d n″,a[1][0] + b[0][0]);} 输出的结果是().A:0 B:1 C:2 D:3 第11题(1.0分)题号:442 定义一个4个元素的一维整型数组,()是不正确的.A:int a[4];B:int a[4]={1,2,3,4,5};C:int a[4]={1,2,3};D:int a[4]={1};第12题(1.0分)题号:1648 以下程序的输出结果是().main(){ int i, x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i

A:字符数组可以存放字符串 B:字符数组中的字符串可以整体输入、输出 C:可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D:不可以用关系运算符对字符数组中的字符串进行比较 第15题(1.0分)题号:1667 有以下程序 main(){int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};int i,s=0;for(i=0;i

A:ABCDEFG B:AABBCCDDEEFFGG C:非字母数字字符 D:语句不能执行 第22题(1.0分)题号:448 对字符数组s赋值,不合法的一个是().A:char s []=“Beijing”;B:char s [20]={“Beijing”};C:char s[20];s=“Beijing”;D:char s[20]={'B,'e','i','j','i','n','g'};33

第七章

一、填空 共22题(共计22分)第1题(1.0分)题号:1100 main(){int num1,num2;int *p1=&num1,*p2=&num2;int *pointer;scanf(“%d”,p1);scanf(“%d”,p2);if(*p1>*p2){ pointer=p1;p1=p2;p2=pointer;} printf(“min=%d,max=%dn”,*p1,*p2);} 若通过键盘输入了9和6,则: 上述程序的输出结果是【min=6,max=9】.第2题(1.0分)题号:1085 完成下列程序.求一个字符串的长度,用字符数组实现.main(){int len=0;char str[20],*p;scanf(“%s”,str);p=str;while(*p!=''){ 【p++】;【p++】;} printf(“nlength=%d”,len);} 第3题(1.0分)题号:438 当运行以下程序时,从键盘输入 apple cat 则以下程序的运行结果是【acat】.#include “stdio.h” main(){ char s[80],*p;p=s;gets(p);while(*p!='')if(*p=='a'){p++;gets(p);} else break;puts(s);} 第4题(1.0分)题号:443 执行下面的程序段后,ab的值为【110】.int *v,ab;ab=100;34 v=&ab;ab=*v+10;第5题(1.0分)题号:1089 以下程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数.例如,输入的字符 串为:556,则输出十进制整数366.请填空. #include “stdio.h”  main(){ char *p, s[6]; int n; p=s; gets(p); n=*p-'0';while(【*(++p)】!='')n= 【n*8+*p-'0'】 printf(“%d n”,n); } 第6题(1.0分)题号:437 当运行以下程序时,从键盘输入 control cat bed-1 则以下程序的运行结果是【bed】.#include “stdio.h” main(){ char s[80],*p;p=s;gets(p);while(*p!='-'){ if(*p=='a'||*p=='b')puts(p);gets(p);} } 第7题(1.0分)题号:444 执行程序段后,表达式*--p的值是【20】.int a[]={63,20,30,28};p=&a[2];第8题(1.0分)题号:1086 以下程序的运行结果是【12345】.main(){ char a[]=“12345”,*p;int s=0;for(p=a;*p!='';p++)s=10*s+ *p-'0';printf(“%d”,s);} 35

;第9题(1.0分)题号:1083 执行以下程序后,a的值为【0】,b的值为【7】.main(){int a,b,k=4,m=6;int *p1=&k,*p2=&m;a=(p1==&m);b=(-*p1)/(*p2)+7;printf(“a=%d,b=%d”,a,b);} 第10题(1.0分)题号:430 以下程序段的运行结果是【a=1,b=11】.char *p=“%d,a=%d,b=%dn”;int a=11,b=10,c;c=a%b;p+=3;printf(p,c,a,b);第11题(1.0分)题号:1082 以下程序运行时输出结果是【4】.#include main(){ char *s, *s1=“Here”;s=s1;while(*s1)s1++;printf(“%dn”,s1-s);} 第12题(1.0分)题号:422 以下程序的输出结果是【2,6】.main(){ int a[]={1,2,3,4,5,6},*p=a;*(p+3)+=2;printf(“%d,”,*++p);printf(“%dn”,*(p+2));} 第13题(1.0分)题号:423 若有声明“char a[3]=”AB“;char *p=a;”,执行语句“printf(”%d“,p[2]);”后 输出结果是【0】.第14题(1.0分)题号:1087 以下程序段的运行结果是【4】.char *p=“abedefg”;p+=3;printf(“%d”,strlen(strcpy(p,“ABCD”)));第15题(1.0分)题号:1091 下面程序的输出结果为【1 4】.#include 36 int x[2][3]={1,2,3,4,5,6};main(){int *p;for(p=&x[0][0];p main(){ int a[]={1,2,3,4,5,6},*p;p=a;*(p+3)+=2;printf(“%d,%dn”,*p,*(p+3));} 结果为:【1,6】.第18题(1.0分)题号:1090 下面程序输出结果为【6 8】.main(){int a[3][3]={1,2,3,4,5,6,7,8,9},*p,(*p1)[3];p=*a+5;p1=a;printf(“%dt%dn”,*p,*(*(p1+2)+1));} 第19题(1.0分)题号:435 以下程序段的运行结果是【1*0*】.char *p=“PDP1-0”;int i,d;for(i=0;i

main(){ int x[5]={2,4,6,8,10},*p,**pp;p=x;pp=&p;printf(“%d,”,*(p++));printf(“%d”,**pp);} 第21题(1.0分)题号:426 下面程序的输出结果为【abc,ABC,bc,BC,c,C,】.#include main(){int i;char *m=“abc”,k[4];k[0]='A';k[1]='B';k[2]='C';k[3]='';for(i=0;i

二、单项选择 共40题(共计40分)第1题(1.0分)题号:484 以下程序运行后,输出结果是().main(){ char *s=“abcdefg”;s+=5;printf(“%sn”,s);} A:fg B:字符f的ASCII码值 C:字符f的地址 D:出错 第2题(1.0分)题号:1673 已知有程序段

“chat str [] [10]={”Aoyun“,”Beijing“},*p=&str[0][0];printf(”%sn“,p+10);”,则执行printf 语句后输出为().A:Beijing B:Aoyun C:ing D:ng 第3题(1.0分)题号:492 假定已有声明“char a[30],*p=a;”,则下列语句中能将字符串“This is a C program.”正确地保存到数组a中的语句是().A:a[30]=“This is a C program.”;B:a=“This is a C program.”;C:*p=“This is a C program.”;D:strcpy(p,“This is a C program.”);38 第4题(1.0分)题号:1685 设int a [5][5],*b[5],(*c)[5]=a;则被分别称为是().A:数组、数组指针、指针数组 B:数组、指针数组、指针函数 C:数组、数组指针、函数指针 D:数组、指针数组、数组指针 第5题(1.0分)题号:493 若有声明语句“char ch='a', *pc=&ch;”,以下语句有语法错误的是().A:(*pc)++;B:ch+=-'a'+'A';C:toupper(ch)=ch;D:ch++;第6题(1.0分)题号:1696 设char s [10], *p;正确的操作语句是().A:p=“MBA”;B:s++;C:s=“MBA” D:s[ ]=“MBA”;第7题(1.0分)题号:1677 有以下程序,执行后输出结果是().main(){char *s[]={“one”,“two”,“three”},*p;p=s[1];printf(“%c,%sn”,*(p+1),s[0]);} A:n,two B:t,one C:w,one D:o,two 第8题(1.0分)题号:1686 若已定义x为int 类型变量,下列语句中定义指针变量p的正确语句是().A:int p=&x B:int *p=x C:int *p=&x;D:p=x;第9题(1.0分)题号:1695 设int a[3][2];能正确表示a数组元素地址的是().A:a[1] B:a[3] C:*a[2] D:&a[3][2] 第10题(1.0分)题号:1683 若有语句 int *point,a=4;和point=&a;下面代表地址的选项是().A:a B:*point C:*a D:point 第11题(1.0分)题号:454 如有以下定义的语句,而且0≤i〈10.则对数组元素的错误引用是().int a[]={1,2,3,4,5,6,7,8,9,0},*p,i;p=a;A:*(a+i)B:a[p-a] C:p+I D:*(&a[i])第12题(1.0分)题号:483 int a[]={1,2,3,4,5,6};int *p=a;则下列结果不为4的表达式是().A:*p+3 B:*(p+3)C:a[4] D:*(a+3)第13题(1.0分)题号:1679 设有如下程序: #include main(){ char s[128]={''},*p=s;while(strcmp(s,“END”)){ gets(s);while(*p)putchar(*p++);}} gets函数每次输入一个字符串.以下关于该程序运行时输出结果的叙述中正确的是().A:所有输入的字符串都能被完整输出 B:所有输入的字符串都不能被完整输出 C:只能完整输出第一个字符串 D:只能完整输出最后一个字符串

第14题(1.0分)题号:1688 执行语句“for(i=0;i

第八章

一、填空 共45题(共计45分)第1题(1.0分)题号:509 以下程序实现将a数组中后8个元素从大到小排序的功能.void sort(int *x,int n);main(){ int a[12]={5,3,7,4,2,9,8,32,54,21,6,43},k;sort(【a+4】 ,8);for(k=0;k

#include void f(float a,float b,float* c){ static float x;float y;x=(y=a>b?a:b)>x?y:x;*c=x;} void main(){ float a[5]={2.5,-1.5,7.5,4.5},x;int i;for(i=0;i int trcmp(char *s,char *t){ while(*s&&*t&&*s==【*t】){s++;【t++】;}

return 【*s-*t】;} 第8题(1.0分)题号:480 下列给定程序中,函数fun的功能是:逐个比较a、b两个字符串对应位置中的字符,把ASCII值 大或相等的字符依次存放到c数组中,形成一个新的字符串.例如:若a中的字符串为:aBCDeFgH,b中的字符串为:ABcd, 则c中的字符串应为:aBcdeFgH.请填空. #include #include void fun(char *p, char *q, char *c){ int k=1;while(【!(*p==''&& *q=='')】) { if(【*p void f(int *p1, int *p2){ int *t;t=p1;p1=p2;p2=t;} main(){ int a=10,b=20;printf(”%d,%dn“,a,b);f(&a,&b);printf(”%d,%dn“,a,b);} 程序输出的第一行是【10,20】,第二行是【10,20】.第11题(1.0分)题号:479 以下函数的功能是计算s=1+1/2!+1/3!+……+1/n!,请填空.45 double fun(int n){double s=0.0,fac=1.0;int i;for(i=1;【n>=i】;i++){ fac=fac*【1/i】;s=s+fac;} return s;} 第12题(1.0分)题号:478 下面程序的运行结果是:【4】.int fa(int x){return x*x;} int fb(int x){return x*x*x;} int f(int(*f1)(),int(*f2)(),int x){return f2(x)-f1(x);} main(){int i;i=f(fa,fb,2);printf(”%dn“,i);} 第13题(1.0分)题号:500 以下函数用以求x的y次方.请填空.double fun(double x,int y){ int i;double z;for(i=1,z=x;i 【

a=6,b=3】

void fun1(int a,int b){ int k;k=a;a=b;b=k;} void fun2(int *pa,int *pb){ int k;k=*pa;*pa=*pb;*pb=k;} main(){ int a=3,b=6;46 fun1(a,b);printf(”a=%d,b=%dn“,a,b);fun2(&a,&b);printf(”a=%d,b=%dn“,a,b);} 第17题(1.0分)题号:508 fun(int *s,int n1,int n2){ int t;while(n1

for(i= 【j+1】;i

第24题(1.0分)题号:499 48

缺省类型.下列程序的输出结果是【8,17】 int fun(int x,int y){ static int m=0,i=2;i+=m+1;m=i+x+y;return m;} main(){ int j=4,m=1,k;k=fun(j,m);printf(”%d,“,k);k=fun(j,m);printf(”%dn“,k);} 第25题(1.0分)题号:486 以下程序输出的结果是:【10,20,30】 void fun(int a, int b, int c){ a=100;b=200;c=300;} main(){ int x=10;y=20;z=30;fun(x, y, z);printf(”%d,%d,%d", x,y,z);} 第26题(1.0分)题号:503 #include void f(int *p,int n){ int i,j;for(i=0;i

下载C语言题库汇总(.5)word格式文档
下载C语言题库汇总(.5).doc
将本文档下载到自己电脑,方便修改和收藏。
点此处下载文档

文档为doc格式

    热门文章
      整站推荐
        点击下载本文