首页 C语言全部考试系统题库含答案

C语言全部考试系统题库含答案

举报
开通vip

C语言全部考试系统题库含答案实用文档目录目录1单元练习题一C语言基础知识3一、判断题3二、单项选择题4三、读程序选择题7四、程序填空题8五、编程题错误!未定义书签。单元练习题二C语言程序结构9一、判断题9二、单项选择题9三、读程序选择题错误!未定义书签。四、程序填空题17五、编程题错误!未定义书签。单元练习题三数组21一、判断题21二、单项选择题22三、读程序选择题错误!未定义书签。四、程序填空题28五、编程题错误!未定义书签。单元练习题四函数33一、判断题33二、单项选择题34三、读程序选择题40四、程序填空题错误!未定义书签。五、编程题错...

C语言全部考试系统题库含答案
实用文档目录目录1单元练习 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 一C语言基础知识3一、判断题3二、单项选择题4三、读程序选择题7四、程序填空题8五、编程题错误!未定义书签。单元练习题二C语言程序结构9一、判断题9二、单项选择题9三、读程序选择题错误!未定义书签。四、程序填空题17五、编程题错误!未定义书签。单元练习题三数组21一、判断题21二、单项选择题22三、读程序选择题错误!未定义书签。四、程序填空题28五、编程题错误!未定义书签。单元练习题四函数33一、判断题33二、单项选择题34三、读程序选择题40四、程序填空题错误!未定义书签。五、编程题错误!未定义书签。单元练习题五预处理错误!未定义书签。一、判断题错误!未定义书签。二、单项选择题错误!未定义书签。三、读程序选择题错误!未定义书签。四、程序填空题错误!未定义书签。五、编程题错误!未定义书签。单元练习题六指针45一、判断题45二、单项选择题46三、读程序选择题错误!未定义书签。四、程序填空题54五、编程题错误!未定义书签。单元练习题七结构体与共用体58一、判断题58二、单项选择题60.实用文档三、读程序选择题错误!未定义书签。四、程序填空题68五、编程题错误!未定义书签。单元练习题八文件73一、判断题73二、单项选择题74三、读程序选择题77四、程序填空题77五、编程题错误!未定义书签。.实用文档第一章C语言基础知识(C语言概述、算法、数据类型运算符 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 达式、位运算)一、判断题(正确的填A,错误的填B)R1.在C语言中,逗号运算符的优先级最低。(A)2.在C语言可执行程序的开始执行点是程序中第一个函数。(B)3.“5ch”是合法的变量名。(B)4.C语言程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上。(A)5.当输入数据时,必须指明变量的地址,如scanf("%f",&f)(A)N6.表达式i++与++i在任何场合功能完全相同。(B)7.在赋值表达式中,赋值号左边的变量和右边的表达式之值的数据类型可以不相同。(A)R8.C语言程序中,语句以逗号结尾。(B)在C程序中,APH和aph代表不同的变量。(A)a-=7等价于a=a-7。(A)N11.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按原字符长从左向右全部输出。(A)12.如果x>y为真或ay)&&(a 规定 关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定 :在一个源程序中,main函数的位置()。A.必须在最后B.必须在系统调用的库函数的后面。C.必须在最开始。D.可以任意R3、下列说法中正确的是()。A.C程序书写时,不区分大小写字母B.C程序书写时,一行只能写一个语句C.C程序书写时,一个语句可分成几行书写D.C程序书写时每行必须有行号4、已知ch是字符型变量,下面不正确的赋值语句是()。A.ch=5+9;B.ch='a+b';C.ch='\0';D.ch='7'+'6';5、若有定义:inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。A.2.750000B.0.00000C.3.500000D.2.5000006.已知ch是字符型变量,下面正确的赋值语句是()。A.ch='123';B.ch='\08';C.ch='\xff';D.ch="\";以下标识符中,不能作为合法的C用户定义标识符的是:____________。A)a3_b3B)voidC)_123D)abc.C语言中,运算对象必须是整型的运算符是__________。A)%B)/C)%和/D)*在C程序中,用___________表示逻辑值“真”。A)1B)非0的数C)非1的数D)大于0的数N8.设intc=5和inta;a=2+(c+=c,c+8,++c),则a=__________A)15B)14C)13D)169.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符________。必须为字母或下划线。B)必须为下划线。C)必须为字母D)可以是字母、数字和下划线中的任一种字符。.实用文档若变量已正确定义并赋值,表达式____________不符合C语言语法。A)a*b/c;B)3.14%2C)2,bD)a/b/c下列说法中正确的是___________。A)C程序书写时,不区分大表达式小写字母B)C程序书写时,一行只能写一个语句C)C程序书写时,一个语句可分成几行书写D)C程序书写时每行必须有行号为表示数学关系x≥y≥z,正确的C语言表达式是__________。A)(x>=y)&&(y>=z)B)(x>=y)AND(y>=z)C)(x>=y>=z)D)(x>=y)&(y>=z)不合法的八进制数是________A)0B)028C)077D)0114、以下不能定义为用户标识符是AMainB_0C_intDsizeof15.若x=5,y=4则y*=x+5;y的值为()。A.40B.20CB.15D.3016、组成C语言程序的基本单位是()。A)过程B)子程序C)函数D)主程序和子程序17.下列哪个标识符是C语言合法的标识符()。A)a*bB)-xyzC)ba2D)5iN18.若有定义:inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)/4的值是()。A)2.75B)3.5C)2.5D)019.设intm=1,n=2;则++m==n的结果是()A、0B、1C、2D、3N20.若变量已定义并赋值,下列符合C语法的表达式是:()A、a:=b+1B、a=b=c+2C、int18.5%3D、a=a+7=c+bR(3)在C程序中,设一表达式中包含有int,long,unsigned和char类型的变量和数据,则表达式最后的运算结果类型是()A.intB.charC.unsignedD.longR21.C语言中基本的数据类型包括__________。A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型.实用文档N22.若定义x和y为double类型,则表达式:x=2,y=x+5/2的值是__________A)4B)4.5C)4.0D)3.0在以下运算符中,优先级最高的运算符是__________A)?:B)++C)&&D)+=24.C语言中基本的数据类型不包括__________。A)整型B)字符串型C)字符型D)实型25.若定义intx=7,y=5,z;则表达式:z=x+5/2*y的值是__________A)7B)7.5C)17D)19.5以下说法中正确的是()A、C语言程序总是从第一个定义的函数开始执行、在C语言程序中,要调用的函数必须在main()函数中定义、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分(1)设inta=2,b;则执行b=a&&1;语句后,b的结果是()A.0B.1C.2D.3N(2)逗号表达式(a=3*5,a*4),a+15的值是()A.15B.60C.30D.757.若已经定义了一个字符型变量为a,下面哪个表达式的含义跟其余表达式不同:A)a!=0B)a!=’\0’C)aD)!a在以下运算符中,优先级最高的运算符是__________A),B)[]C)&&D)+=在C语言中,逻辑值“真”用__________表示。A)trueB)大于0的数C)非0的整数D)非0的数表达式__________是满足:当c的值为1、3、5三个数中任意一个时值为“真”,否则值为“假”的表达式A)(c=1)||(c=3)||(c=5)B)(c!=1)&&(c!=3)&&(c!=5)C)(c==1)&&(c==3)&&(c=5)D)(c==1)||(c==3)||(c==5)1.C语言中,int类型数据占2个字节,则long类型数据占()A、1个字节B、2个字节C、3个字节D、4个字节下列字符串是合法的标识符的是()。A、_HJB、9_studentC、longD、LINE1.实用文档下列说法中正确的是()。A、C程序书写时,不区分大小写字母B、C程序书写时,一行只能写一个语句C、C程序书写时,一个语句可分成几行书写D、C程序书写时每行必须有行号3.在C语言中,要求参加运算的数必须是整数的运算符是()。A、/B、!C、%D、==4.C语言中,逻辑“真“等价于()。A、大于零的数B、大于零的整数C、非零的数D、非零的整数假设在程序中a,b,c均被定义为整型,并且已赋大于1的值,则下列能正确表示代数式1/abc的表达式是()。A、1/a*b*cB、1/(a*b*c)C、1/a/b/(float)cD、1.0/a/b/c1.下列合法的字符常量是()。A、'\084'B、'\x43'C、'ab'D、"\0"2.在C语言提供的合法的关键字是()A、switchB、cherC、CaseD、sturct3.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是A、2B、1C、2.0D、2.5三、程序填空题以下程序不用第三个变量实现两个数对调的操作。#includ“stdio.h”main(){inta,b;scanf("%d,%d",&a,&b);a=;(三个字符)b=;(三个字符)a=a-b;printf("%d,%d",a,b);}2、选择程序的运行结果。main(){intx=1,y=2,z,a,b,c,d;.实用文档z=++x||++y;printf("x=%d\n",x);printf("y=%d\n",y);/*输出结果(三个字符)*/a=-1;b=-2;c=++a&&b++;printf("b=%d\n",b);/*输出结果(三个字符)*/}3以下程序的结果为_______main(){unsignedinta=3,b=10;printf("%d\n",a<<2|b>>1);/*输出结果<14>*/printf("%d\n",a<<2&b>>1);/*输出结果<0>*/}若x=3,y=z=4,则下列表达式的值是。(1)(z>=y>=x)?1:0/*值为<0>*/(2)z>=y&&y>=x/*值为<1>*/5已知floatx=4.3,inty;执行语句y=(int)x后,x为型(填写小写英文字母),且y=<4>(填写阿拉伯数字);6表达式’c’&&’d’的值为<1>(填写阿拉伯数字),’c’&&’d’||!(3+4)的值为<1>(填写阿拉伯数字)。7若x为int类型,则与逻辑表达式“x”等价的表达式是,与逻辑表达式“!x”等价的表达式是。表示“整数x的值大于5”时逻辑值为“真”的表达式是5>,逻辑值为“假”的表达式是9已知字母A的ASCII码为十进制数65,且设ch‘A’-‘4’+‘9’的值为<’F’>(一个字符常量则变量c中包含的字符个数为<1>(数字)。10、C语言所提供的基本数据类型的整型类型包括:(按每种类型所占字节数,从小到大排列)为字符型变量,则表达式ch=);若定义:charc=‘\72’;<短整型>、整型、<长整型>。.实用文档第二章C语言程序结构(顺序程序设计、选择结构程序设计、循环控制)一、判断题(正确的填A,错误的填B)1.do-while语句中的条件为非0时,就结束该循环。(B)2.在switch-case语句中,不是每个case后都要使用break语句。(A)3.Break语句只能用于循环结构中。(B)未给变量赋初值,只是运行结果不正确,不会有其他不良影响。(B)5、switch语句中,可以不使用break语句;(A)6、for语句中,三个表达式都可以省略;(A)7(7)在for循环中使用break语句的目的是使流程跳出循环体,终止当前循环(A)continue语句只能用于循环语句中。(A)9.while语句中的条件为0时,就结束该循环。(A)在循环体内使用break语句或continue语句的作用相同。(B)在C语言中,逻辑值“真”用表示。11)112)大于0的数13)非0的整数14)非0的数在循环语句的循环体中,continue语句的作用是()。15)立即终止整个循环16)继续执行continue语句之后的循环体17)结束本次循环18)结束本次循环并跳出循环语句while(!e);中,条件!e等价于()19.e==020.e!=021.e!=122.e==1设intc=5和inta;a=2+(c+=c++,c+8,++c),则a=__________23)1524)1425)1326)16若要表示if(a不等于0)这一关系式,则能正确表示这一关系的表达式为if()27)a<>028)!a29)a=030)a二、单项选择题N1、以下不是死循环的语句是_______。.实用文档for(;;x+i);while(1){x++;}for(i=10;;i--)sum+=i;for(;(c=getchar())!=‘\n’;)printf(“%c”,c);2.设有程序段intk=10;while(k=0)k=k-1;以下描述正确的是()。A.循环体语句一次也不执行。B.循环是无限循环。C.while循环语句执行十次。D.循环体语句执行一次。3.对下述程序,正确的判断是()。main(){inta,b;scanf("%d,%d",&a,&b);if(a>b)a=b;b=a;elsea++;b++;printf("%d,%d",a,b);}A.有语法错误不能通过编译B.若输入4,5则输出5,6C.若输入5,4则输出4,5D.若输入5,4则输出5,5R4.以下程序main(){inti=010,j=10,k=0x10;printf("%d,%d,%d\n",i,j,k);}有语法错误不能通过编译输出结果是()A.8,10,16B.8,10,10C.10,10,10D.10,10,16R5.若变量已正确说明为int类型,要给a,b,c输入数据,以下语句正确的是__________A)read(a,b,c);B)scanf(“%d%d%d”,a,b,c);C)scanf(“%D%D%D”,&a,%b,%c);D)scanf(“%d%d%d”,&a,&b,&c);R6.已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为__________。main(){charx,y;x=’0’;y=’9’;pirntf(“%d,%d\n”,x,y);}A)因输出格式不合法,输出错误信息B)48,57C)0,9D)48,58语句for(k=0;k<5;++k){.“a=%%%d,b=%%%d”,a,b);实用文档if(k==3)continue;printf(“%d”,k);}的输出结果为_________。A)012B)0124C)01234D)没有输出结果为表示关系x>=y>=z,应使用C语言表达式___________。A)(y<=x)&&(y>=z)B)(x>=y)AND(y>=z)C)(x>=y>=z)D)(x>=y)&(y>=z)6.若变量已正确定义,语句“if(a>b)k=0;elsek=1;”和___________等价。A、k=(a>b)?1:0;B、k=a>b;C、k=a<=b;D、a<=b?0:1;以下程序的输出结果是__________voidmain(){inta=2,b=5;printf(}A)a=%2,b=%5B)a=2,b=5C)a=%%d,b=%%dD)a=%d,b=%dN10.以下程序的输出结果是__________voidmain(){intx=10,y=10;printf(“%d%d\n”,x--,--y);}A)1010B)99C)910D)109若要表示if(a不等于0)这一关系式,则能正确表示这一关系的表达式为if(__________)A)a<>0B)!aC)a=0D)aR12对于循环语句while(1);下面()是正确的A、死循环B、循环一次C、不进入循环体D、编译有错下面程序的输出是(假设int数据是2个字节)voidmain(){inta=32768;printf(“a=%d\n”,a);}.实用文档A)a=32768B)a=32767C)a=-32768D)a=-1表达式__________是满足:当c的值为1、3、5三个数中任意一个时值为“真”,否则值为“假”的表达式A)(c=1)||(c=3)||(c=5)B)(c!=1)&&(c!=3)&&(c!=5)C)(c==1)&&(c==3)&&(c=5)D)(c==1)||(c==3)||(c==5)N15.以下程序段的输出结果是_____intx=3;do{printf("%3d",x-=2;}while(!(--x));A)1B)30C)1-2D)死循环16、数字字符0的ASCII值为48,若有以下程序main(){chara='1',b='2';printf("%c,",b++);printf("%d\n",b-a);}程序运行后的输出结果是A3,2B50,2C2,2D2,5017、有以下程序main(){inta,b,d=25;a=d/10&(-1);b=a&&(-1);printf("%d,%d\n",a,b);}程序运行后的输出结果是A6,1B2,1C6,0D2,018.若定义floata;现要从键盘输入a的数据,其整数位为3位,小数位为2位,则选用()。A)scanf("%f",&a);B)scanf("%5.2f",a);C)scanf("%6.2f",&a);D)scanf("%f",a);19.若定义inti;则以下循环语句的循环执行次数是()。for(i=2;i==0;)printf("%d",i--);A)无限次B)0次C)1次D)2次20.下面程序段___x=3;do.实用文档{y=x--;if(!y){printf("x");continue;}printf("#");}while(1<=x<=2);A)将输出##B)将输出##*C)是死循环D)含有不合法的控制表达式以下程序中,while循环的循环次数是()。#include“stdio.h”main(){inti=0;while(i<10){if(i<1)continue;if(i==5)break;i++;}}A、1B、10C、6D、死循环,不能确定次数N22.有以下程序:#include“stdio.h”inta=3;main(){ints=0;{inta=5;s+=a++;}s+=a++;printf("%d\n",s);}程序运行后的输出结果是()。.实用文档A、8B、10C、7D、1123(4)下面程序段的运行结果是()main(){inta=11,b=10,c=0;a/=b+(b&&c);printf(″%d\n″a);}A.0B.1D.1124(5)两次运行下面程序,如果从键盘上分别输入6和4,则程序的输出结果是()main(){intx;scanf(″%d″,&x);if(x++>5)printf(″%d″,x);elseprintf(″%d\n″,x-1);}A.7和5B.6和3C.7和4D.6和4(6)语句while(!e);中,条件!e等价于()A.e=0B.e!=0C.e!=1D.e==0R25下面程序的输出是______main(){intk=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A)k=11,k=12,k=13B)k=11,k=13,k=13C)k=11,k=013,k=oXbD)k=11,k=13,k=b26(7)下面程序的运行结果是()main(){inti=1,sum=0;lop:sum=sum+i;i=i+2;if(i<6)gotolop;printf(″sum=%d\n″,sum);}A.sum=4B.sum=9C.sum=16D.sum=25以下程序的输出结果是__________voidmain(){inta=2,b=5;printf(“a=%%%d,b=%%%d”,a,b);.实用文档}A)a=%2,b=%5B)a=2,b=5C)a=%%d,b=%%dD)a=%d,b=%d28执行下面的程序后,a的值为_____main(){inta,b;for(a=1,b=1;a<100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}}A)7B)8C)9D)102930.下面的程序会()main(){intx=3,y=0,z=0;if(x=y+z)printf(“****”);elseprintf(“####”);}A、有语法错误不能通过编译B、输出****C、可以通过编译,但不能通过连接,因而不能运行D、输出####以下程序的输出结果是()main(){intx=10,y=10,i;for(i=0;x>8;y=++i)printf(“%d%d”,x--,y);}A、10192B、9876C、10990D、101091下面程序的输出是______main(){.实用文档intk=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A)k=11,k=12,k=13B)k=11,k=13,k=13C)k=11,k=013,k=oXbD)k=11,k=13,k=b2.两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是____main(){intx;scanf("%d",&x");if(x++>5)printf("%d",x)elseprintf("%d\n",x--);}A)7和5B)6和3C)7和4D)6和43.读程序#include”stdio.h”main(){inta;floatb,c;scanf("%2d%3f%4f",&a,&b,&c);printf("\na=%d,b=%f,c=%f\n",a,b,c);}若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是_____a=98,b=765,c=4321a=1,b=432,c=8765a=98,b=765.000000,c=4321.000000a=98,b=765.0,c=4321.0下面程序的输出是____main(){intx=3,y=6,a=0;while(x++!=(y-=1)){a+=1;if(y);if()printf(“yes\n”);elseprintf(“no\n”);}N2.下面程序的功能是计算1-3+5-7+-99+101的值。main(){inti,t=1,s=0;for(i=1;i<=101;i+=2){t=;s=s+t;t=<-t>;}printf("%d\n",s);}F3.下面程序的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。main(){floatx,amax,amin;scanf("%f",&x);amax=x;amin=x;while(=0>){if(x>amax)amax=x;if()amin=x;scanf("%f",&x);}.实用文档printf("\namax=%f\namin=%f\n",amax,amin);}F4.下面程序的功能是计算100至1000之间有多少个数其各位数字之和是5。#include“stdio.h”voidmain(){inti,s,k,count=0;for(i=100;i<=1000;i++){s=0;k=i;while(k){s=s+k%10;k=;}if()count++;}printf(“%d”,count);}F5下列程序功能是求数组中主对角线元素之和,请补充完成main(){inta[3][3],i,j,s=0;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",<&a[i][j]>);for(i=0;i<3;i++)for(j=0;j<3;j++)if()s+=a[i][j];printf("s=%d\n",s);}R6.下面程序的功能是:输入一个字符,如果它是一个大写字母,则把它变成小写字母,如果它是一个小写字母,则把它变成大写字母,其它字符不变,请将程序补充完整:main().实用文档{charch;scanf(“%c”,&ch);if(ch>=’A’&&ch<=’Z’)ch=ch+32;elseif(=’a’&&ch<=’z’>)ch=ch-32>;printf(“%c”,ch);}R7.请将用户输入的x,y,z三个整数按照从小到大的顺序排列main(){intx,y,z,t;scanf("%d,%d,%d",&x,&y,&z);if(x>y){t=y;y=x;x=t;}if(z>){t=z;z=x;x=t;}if(z>){t=y;y=z;z=t;}printf("smalltobig:%d,%d,%d\n",x,y,z);}F8.以下程序从读入的整数数据中,统计大于零的整数个数和小于零的整数个数。用输入零来结束输入,程序中用i统计大于零的个数,用变量j统计小于零的整数。请填空。voidmain(){intn,i,j;i=0;j=0;printf(“EnterINTnumbers,with0toend\n”);scanf(“%d”,&n);while(){if(n>0)i=i++;if(n<0)j=j++;;}printf(“i=%4dj=%4d\n”,i,j);}F9.以下程序用“辗转相除法”来求出两个正整数的最大公约数。请填空。若两个数分别放在m和n中,求最大公约数的算法如下:将两数中最大的那个放在m中,小的放在n中。求出m被n除后的余数r。若余数为0则执行步骤(7);否则执行步骤(4)。.实用文档把除数作为新的被除数;把余数作为新的除数。求出新的余数r。重复步骤(3)到(5)。输出n,n即为最大公约数。voidmain(){intr,m,n;printf(“Enterm,n:”);scanf(“%d%d”,<&m,&n>);printf(“m=%dn=%d\n”,m,n);if(m;while(r!=0){m=n,n=r,r=m;}printf(“}R10.以下程序可判断输入的一个字符是否为小写字母,如果是,则转换为对应的大写字母并输出;否则,就原样输出。请填空。#include“stdio.h”voidmain(){chark;printf(“Enteracharacterhere:”);scanf(“%c”,<&k>);if(=’a’&&k<=’z’>)printf(“%c\n”,k-32);elseprintf(“%c\n”,k);}1.程序打印如下形式的图形**********main(){for(inti=1;i<=4;i++){for(intj=1;①j<=i;j++).实用文档printf(②”*”);printf(③“\n”);}}充下列程序,找出100—200之间的全部素数include“math.h”main(){intm,k,i,n=0;for(m=101;m<=200;m=m+2){k=sqrt(m);for(i=2;(6)_i<=k___;i++)if((7)__m%i==0_____)break;if((8)__i>k________){printf(“%d”,m);n=n+1;}if(n%10==0)printf(“\n”);}printf(“\n”);}3.第三章数组(正确的填A,错误的填B)一、判断题1.字符串“girl”大于字符串“good”。(B)2.C语言中有字符串变量,与字符数组等价。(B)R3.同一数组可以存储不同类型的值。(B)N4.若有:inta[2][3];则a+1和a[1]的值以及类型都一样。(B)R5.字符'\0'的值就是0。(A)6.C语言中是用字符串变量来存放字符串。(B)7.表达式sizeof("abc")的值是4。(B)AN8.同数组的名字一样,函数的名字也是一种指针。(A)9、C语言中在定义数组时,一个数组的数组元素的数据类型可以不相同;(B).实用文档10、chara[10];a[10]=9;上述语句编译不会出错;(A)BR11.数组元素的下标是从1开始标号的。(B)N12.若a为一维数组名,则*(a+i)与a[i]等价。(A)循环语句中的continue语句的作用是结束整个循环。(B)字符串"That"小于字符串"the"。(A)字符个数多的字符串比字符个数少的字符串大。(B)有以下语句:intb;charc[10];,则正确的输入语句是16)scanf("%d%s",&b,&c);17)scanf("%d%s",&b,c);18)scanf("%d%s",b,c);19)scanf("%d%s",b,&c);已有定义:chara[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是20数组a和b的长度相同21a数组长度小于b数组长度22a数组长度大于b数组长度设有数组定义:chararray[]="China";则数组array所占的存贮空间为个字节.234245256267若定义intx[10];则TurboC编译系统为该数组分配个字节存储单元。27.1028.1129.2030.21二、单项选择题R1、对两个数组a和b进行如下初始化chara[]="ABCDEF";charb[]={’A’,’B’,’C’,’D’,’E’,’F’};则以下叙述正确的是()A)a与b数组完全相同B)a与b长度相同C)a和b中都存放字符串D)a数组比b数组长度长R2.若有说明:inta[3][4];则对a数组元素的正确引用是()A.a[2][4]B.a[1,3]C.a[1+1][0]D.a(2)(1)R3.合法的数组定义是()A、inta[]="string";B、inta[5]={0,1,2,3,4,5};C、vhsts="string";D、chara[]={0,1,2,3,4,5};4.以下正确的声明是()。A.inta[1][4]={1,2,3,4,5};B.floatx[3][]={{1},{2},{3}};C.longb[2][3]={{1},{1,2},{1,2,3}};D.doubley[][3]={0};.实用文档5下列语句的执行结果是()。staticcharstr[10]={“china”};printf(“%d”,strlen(str));A.10B.6C.5D.0R6、以下能正确定义一维数组的选项是Ainta[5]={0,1,2,3,4,5};Bchara[]={0,1,2,3,4,5};Cchara={'A','B','C'};Dinta[5]="0123";下面程序段的运行结果是()。chara[7]=”abcdef”;charb[4]=”ABC”;strcpy(a,b);printf(“%c”,a[5]);A.空格B.\0C.eD.f8定义如下变量和数组,则输出结果是()。inti;intx[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d",x[i][2-i]);A.159B.147C.357D.3699.下列对一维数组a的正确说明语句为()。A)inta(10);B)intn=10,a[n];C)intn;scanf("%d",&n);inta[n];#defineSIZE10inta[SIZE];下列二维数组的说明中,不正确的是()A、floata[3*8][7-3]B、floata[][3]={0,1,8};C、#defineL3floata[L][3]D、inta[6],[7]执行以下程序段后,s的值是inta[]={5,3,7,2,1,5,4,10};ints=0,k;.实用文档for(k=0;k<8;k+=2)s+=*(a+k);A、17B、27C、13D、无定值12.若有定义:charc[10];从键盘输入“LiFang”,则正确的函数引用是()A.scanf(“%c”,&c[10]);B.gets(c);C.scanf(“%s”,&c);D.gets(c[10]);N13.以下程序的输出结果是_________。main(){chars1[20]=“China”,s2[20]=“for”,s[10];if(strcmp(s1,s2))printf(“%s\n”,strcat(s2,s1));elseprintf(“%d\n”,strlen(s1));}A)ChinaforB)5C)forChinaD)3选择下面程序运行的结果:#include“stdio.h”intm[3][3]={{1},{2},{3}};intn[3][3]={1,2,3};main(){printf("%d\n",m[1][0]+n[0][0]);printf("%d\n",m[0][1]+n[1][0]);}第1条printf语句行输出的结果为()A、0B、1C、3D、2R15(9)以下对一维数组a中的所有元素进行正确初始化的是()A.inta[10]==(0,0,0,0);B.inta[10]={};C.inta[]={0};D.inta[10]={10*2};16(10)(8)若定义intx[10];则TurboC编译系统为该数组分配()个字节存储单元。A.10B.11C.20D.21.实用文档N18.有如下程序main(){inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf(“%d”,s);}该程序的输出结果是A、18B、19C、20D、21N19.执行下列程序时输入123<空格>456<空格>789<回车>,输出结果是()。#include“stdio.h”main(){chars[100];intc,i;scanf("%c",&c);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s\n",c,i,s);}A、123,456,789B、1,456,789C、1,23,456,789D、1,23,456以下程序的输出结果是_____main(){charstr[12]={'s','t','r','i','n','g'};printf("%d\n",strlen(str));(strlen不算\0,sizeof算\0)}A)6B)7C)11D)12合法的数组定义是()A、inta[]="string";B、inta[5]={0,1,2,3,4,5};C、vhsts="string";D、chara[]={0,1,2,3,4,5};以下正确的声明是______。A.inta[1][4]={1,2,3,4,5};B.floatx[3][]={{1},{2},{3}};C.longb[2][3]={{1},{1,2},{1,2,3}};D.doubley[][3]={0};.实用文档N23.阅读下面程序,回答问题。#include“stdio.h"voidmain(){inti,jrow,column,m;staticintarray[3][3]={{100,200,300},{28,72,-30},{-850,2,6}};m=array[0][0];for(i=0;i<3;i++)for(j=0;j<3;j++)if(array[i][j]=0&&t>a[k]){a[k+1]=a[k];k--;}a[k+1]=t;}则该程序段的功能是___(8)____A)对数组a进行插入排序(升序)。B)对数组a进行插入排序(降序)。C)对数组a进行选择排序(升序)。D)对数组a进行选择排序(降序)。N25.执行如下程序段,当输入为Iam时,输出的结果是_________。charstr[80];scanf(“%s”,str);.实用文档strcat(str,”sad!”);printf(“%s”,str);A)Iamsad!B)Isad!C)Isad!D)sad!main(){inta[10]={1,2,3,-4,5,6,7,-8,9,10},s=0;for(inti=0;i<10;i++){if(a[i]<0)break;s+=a[i];}printf("%d",s);//s=6}3)下面程序的输出是include“stdio.h”include“stdlib.h”main(){charstr1[20],str2[20];scanf(“%s”,str1);//从键盘输入helloworldprintf("%s",str1);//输出结果1fflush(stdin);gets(str2);//从键盘输入crazyenglishprintf("%s",str2);//输出结果2输出crazyenglish}输出结果1是:(A)Hello(B)World(C)HelloWorld(D)WorldHello输出结果2是:(A)Hello(B)World(C)HelloWorld(D)WorldHello7.选择下面程序运行的结果:#include“stdio.h”intm[3][3]={{1},{2},{3}};intn[3][3]={1,2,3};main(){.实用文档printf("%d\n",m[1][0]+n[0][0]);printf("%d\n",m[0][1]+n[1][0]);}第1条printf语句行输出的结果为()A、0B、1C、3D、22.还是刚才1题那个程序,第2条printf语句行输出的结果为()A、2B、4C、6D、05.函数调用:strcat(strcpy(str1,str2),str3)的功能是()A、将串str1复制到串str2中后再连接到串str3之后;B、将串str1连接到串str2之后再复制到串str3之后;C、将串str2复制到串str1中后再将串str3连接到串str1之后;C、将串str1复制到串str2中后再将串str3连接到串str2之后;三、程序填空题F1整型数组求和inta[10]={0,1,2,3,4,5,6,7,8,9},sum=0,*pa;pa=a;for(pa=a;(<(pa-a)<10>);())sum=sum+*pa;F2.下面函数的功能是将一个字符串逆序存放,请填空。#include"stdio.h"#include“string.h”voidfun(charstr[]){intm>;inti,j;for(i=0,j=strlen(str);i;str[j-1]=m;}printf("%s\n",str);}R3.下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请填空。.实用文档main(){inti,a[20],sum,count;sum=count=0;for(i=0;i<20;i++)scanf("%d",<&a[i]>);{if(a[i]>0){count++;sum+=;}}printf("sum=%d,count=%d\n",sum,count);}F4.函数YangHui的功能是把杨辉三角形的数据赋给二维数组的下半三角,形式如下11211331146410列元素和主对角线无素均为11#defintN6voidYangHui(int*[N][N]){inti,j;x[0][0]=1for(i=1;i=1;for(j=1;j+x[i-1][j];}}F5、以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串。例如,输入字符串:abc123edf456gh,执行程序后输出:123456。#include“stdio.h”#include“string.h”main().实用文档{chars[80],d[80];inti,j;gets(s);for(i=j=0;s[i]!='\0';i++)if(s[i]>=’0’<&&>s[i]<=’9’){d[j]=s[i];j++;}d[j]=<'\0'>;puts(d);}R6.将60分以下的所有成绩显示到屏幕上intscore[10]={56,76,65,43,98,67,34,89,90,76},i;for(i=0;();i++)if()printf(“score[%d]=%d\n”,i,score[i]);F7.在n行n列的矩阵中,每行都有最大的数,本程序求这n个最大数中的最小一个。#include#defineN100inta[N][N]voidmain(){introw,col,max,min,n;/*输入合法n(<100),和输入n*n个整数到数组a的代码略*/for(row=0;row)min=max;elseif(min>max);}printf(“theminofmaxnumbersif%d\n”,min);}F9求字符串中字符的个数.实用文档char*p=”HelloWorld”;intnum=0,k=0;while(*(p+k)!=<’\0’>){num=;k++;}printf(“num=%d”,num);N10(4)统计字符串的单词数量(单词用空格分隔)charstr[30]={“Welcomemyfriend!”};inti,num;for(i=1;str[i]!=<’\0’>;i++){if(str[i]!=’’&&str[i-1]==<’’>)num++;}printf(“num=%d”,num);5(2)6(3)求字符串中字符的个数char*p=”HelloWorld”;intnum=0,k=0;○‘\0’))while(*(p+k)!=(1{○(2num++;).实用文档(○3k++;)}printf(“num=%d”,num);7(4)统计字符串的单词数量(单词用空格分隔)charstr[30]={“Welcomemyfriend!”};inti,num;for(i=1;str[i]!=(○‘\0’);i++)1{if(str[i]!=(○‘’)&&str[i-1]==(○’’))23num++;}printf(“num=%d”,num);折半查找法:设数组长度为n,则将输入的数m与a[n/2]比较,若ma[n/2],则将a[n/2+1]到a[n]的数继续折半进行查找。程序功能:有10个数按升序放在一个数组中,输入一个数,要求用折半查找该数是数组中的第几个元素,如果该数不在数组中,打印出“NO”。#include“stdio.h”voidmain(){inta[10]={12,32,45,62,71,76,80,85,90,95};intnum,bott,top,mid;scanf("%d",&num);bott=0,top=9;while(bott小于等于top){mid=(bott+top)/2;if(num==a[mid]){printf("%disthe%dnumber\n",num,mid);break;}elseif(num小于a
本文档为【C语言全部考试系统题库含答案】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥13.0 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
is_090279
暂无简介~
格式:doc
大小:1015KB
软件:Word
页数:161
分类:
上传时间:2021-11-05
浏览量:14