C语言程序设计(山东联盟)-知到答案、智慧树答案_第1页
C语言程序设计(山东联盟)-知到答案、智慧树答案_第2页
C语言程序设计(山东联盟)-知到答案、智慧树答案_第3页
C语言程序设计(山东联盟)-知到答案、智慧树答案_第4页
C语言程序设计(山东联盟)-知到答案、智慧树答案_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

C语言程序设计(山东联盟)-知到答案、智慧树答案第一章单元测试1、问题::流程图中用下列哪一个图形符号表示判断?()选项:A:矩形框B:菱形框C:平行四边形框D:圆形框答案:【菱形框】2、问题::流程图中用下列哪种图形符号表示事情处理过程的开始?(选项:A:圆括号矩形B:矩形C:箭头D:圆圈答案:【圆括号矩形】3、问题::流程图中用于描述输出的是下列哪一个图形符号?选项:A:矩形框B:菱形框C:平行四边形框D:圆括号矩形框答案:【平行四边形框】4、问题::以下选项中哪一个是C语言关键字()。选项:A:printfB:includeC:funD:default答案:【default】5、问题:01210031:下列选项中不属于C语言关键字的是()。选项:A:defaultB:enumC:registerD:external答案:【external】6、问题:01210051:C语言提供的合法关键字是()。选项:A:swithB:cherC:CaseD:default答案:【default】7、问题:01210021:下列哪一个选项不属于C语言的关键字()。选项:A:whileB:breakC:integerD:static答案:【integer】8、问题:01210041:下列四组选项中均不是C语言关健字的选项是()。选项:A:defineIFtypeB:gectcharprintfC:includescanfcaseD:whilegopow答案:【defineIFtype】9、问题:01210061:C语言提供的合法数据类型关键字是()。选项:A:floatB:SignedC:IntegerD:Char答案:【float】10、问题::在以下各组标识符中,均可以用作变量名的一组是()。选项:A:a01,IntB:table_1,a*1C:0_a,W12答案:【a01,Int】11、问题:01310021:下列不合法的C语言中标识符是()。选项:A:studentB:#xyzC:_totalD:PI答案:【#xyz】12、问题:01310031:以下不合法的C语言标识符是()。选项:A:ABCB:abcC:a_bcD:ab.c答案:【ab.c】13、问题:01310041:下列字符串是合法标识符的是()。选项:A:_HJB:9_studentC:longD:LINE1答案:【_HJ】14、问题:01310051:下列标识符组中,合法的用户标识符为()。选项:A:_0123与ssipedB:del-word与signedC:list与*jerD:keep%与wind答案:【_0123与ssiped】15、问题:01310061:以下选项中不合法的用户标识符是()。选项:A:abc.cB:fileC:MainD:PRINT答案:【abc.c】16、问题:01310071:以下选项中不合法的用户标识符是()。选项:A:_123B:PrintfC:A$D:Dim答案:【A$】17、问题:01310081:在下列C语言程序中,可以用做变量名的是()。选项:A:1B:a1C:intD:*p答案:【a1】18、问题:01310091:以下符号中不能用作用户标识符的符号是()。选项:A:_256B:voidC:ScanfD:Struct答案:【void】19、问题:01310101:下面四个选项中,均是不合法的用户标识符的选项是()。选项:A:Ap_0doB:floatlao_AC:b-agotointD:_123tempINT答案:【b-agotoint】20、问题:语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()。选项:A:必须为大写B:必须为下划线C:必须为字母或下划线D:可以是字母、数字和下划线中的任一种字符答案:【必须为字母或下划线】21、问题:语言规定标识符只能由字母、数字和小数点三种字符组成。()选项:A:对B:错答案:【错】22、问题:01420021:65的二进制32位定长形式是00000000000000000000000001000001选项:A:对B:错答案:【对】23、问题:01410021:下面4个选项中,均是正确的八进制数和十六进制数的选项是()。选项:B:0abc-0170xcD:0a12-0x123-0xa答案:【】24、问题:某种数制每位上所使用的数码个数称为该数制的()。选项:A:基数B:位权C:数值D:指数答案:【基数】25、问题:01410031:下面四个选项中,均是不正确的八进制或十六进制数的选项是()。选项:A:0160x8f018B:0abc0170xaD:0a127ff-123答案:【0a127ff-123】第二章单元测试1、问题::C语言定义一个变量,占用内存中的一个存储空间。()选项:A:对B:错答案:【对】2、问题:02180021:C语言中,要求对所有用到的变量先定义,然后才能使用。()选项:A:对B:错答案:【对】3、问题::下面四个选项中均是合法整型常量的选项是()。选项:B:-0xcdf01a0xeC:-01986,0120668D:-0x48a2e50x02B2答案:【】4、问题:02210021:下面四个选项中,均是不合法整型常量的选项是()。选项:B:-0xcdf01712,456C:-0189995e2D:-0x48eg-06803f答案:【-0x48eg-06803f】5、问题:02210031:下列选项中表示一个正确的整型常量()。选项:A:1.2B:-20C:1,000D:456答案:【-20】6、问题:02210041:若a为整型变量,则语句a=-2;printf("%d",a);()。选项:A:赋值不合法B:输出值为-2C:输出为不确定值D:输出值为2答案:【输出值为-2】7、问题::在变量声明中给变量赋初值的方法是:inta=b=c=10;()选项:A:对B:错答案:【错】8、问题:02280021:如果i的原值为3,则:j=++i;j的值为3。()选项:A:对B:错答案:【错】9、问题:02280031:设C语言中一个int型数据在内存中占2个字节,则int数据的取值范围为-32768~32767。()选项:A:对B:错答案:【对】10、问题::下面四个选项中,均是不合法浮点数的是()。选项:A:1600.12e3B:1232e4.2.e5C:-018123e40.0D:-e3.2341e3答案:【1232e4.2.e5】11、问题:02310031:以下每个选项都代表一个常量,其中不正确的实型常量是()。选项:A:2.607E-1B:0.8103e2C:-77.77D:4.6e-2答案:【0.8103e2】12、问题:02310041:设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()。选项:A:intB:floatC:doubleD:不确定答案:【double】13、问题:02310051:设有说明:charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为()。选项:A:floatB:charC:intD:double答案:【double】14、问题:02310062:以下变量定义中,合法的是()。选项:A:float3_four=3.4;B:int_abc_=2;C:doublea=1+4e2.0;D:shortdo=15;答案:【int_abc_=2;】15、问题:02310072:已定义x为float型变量x=213.82631;printf("%-4.2f\n",x);则以上语句()。选项:A:输出格式描述符的域宽不够,不能输出B:输出为213.83C:输出为213.82D:输出为-213.82答案:【输出为213.83】16、问题:02410031:C语言中,char型数据在内存中的存储形式是()。选项:A:原码B:反码C:补码D:ASCII码答案:【ASCII码】17、问题:02410041:下面正确的字符常量是()。选项:A:"c"B:'\\''C:'W'D:'答案:【"c"】18、问题:02410081:下面四个选项中,均是正确的数值常量或字符常量的选项是()。选项:A:0.00f8.9e'&'B:"a"3.9E-2.51e1'"'D:+0010xabcd2e250答案:【+0010xabcd2e250】19、问题::字符型变量用来存放字符常量,注意只能放2个字符。()选项:A:对B:错答案:【错】20、问题:02480021:C语言中可以把一个字符串赋给一个字符变量。()选项:A:对B:错答案:【错】21、问题:02480031:C语言使字符型数据和整型数据在一定范围内之间可以通用。一个字符数据既可以以字符形式输出,也可以以整数形式输出。()选项:A:对B:错答案:【对】22、问题:02480041:C的字符常量是用双引号括起来的一个字符。()选项:A:对B:错答案:【错】23、问题::下面不正确的字符串常量是()。选项:A:'abc'B:"12'12"C:"0"D:""答案:【'abc'】24、问题:02510021:下面4个选项中均是非法常量的是()。选项:D:0xabc'\0'"a"答案:【】25、问题::字符串常量是一对单引号括起来的字符序列。()选项:A:对B:错答案:【错】26、问题::intk=8567;printf("|%-6d|",k);结果是()。选项:A:输出格式描述不合法B:输出为|008567|C:输出为|8567|D:输出为|-08567|答案:【输出为|8567|】27、问题:02610021:若在scanf函数语句中没有非格式字符作输入数据的间隔,则不可用()作为输入数据的间隔。选项:A:空格B:逗号D:回车答案:【逗号】28、问题:02610031:使用scanf函数时,在源程序开头()。选项:A:书写#includeB:书写#includeC:不必写#includeD:书写#include答案:【书写#include】29、问题:02610041:doublex=213.82631;printf("%-6.2e\n",x);则以上语句()。选项:A:输出格式描述符的域宽不够,不能输出B:输出为21.38e+01C:输出为2.14e+02D:输出为-2.14e2答案:【输出为2.14e+02】30、问题:02610051:若输入4位整数到整型变量a中,可用()。选项:A:scanf("M");B:scanf("M",&a);C:scanf("M",a);D:scanf("%d",&a);答案:【scanf("%d",&a);】31、问题:02610061:a为整型变量,输入5,执行printf("a=%d",a)后输出为()。选项:A:a=%5B:5C:a=5D:a=a=5答案:【a=5】32、问题:02610072:下列能正确输入字符数组a的语句是()。选项:A:scanf("%s",a);B:scanf("%s",&a);C:scanf("%c",a);D:循环执行scanf("%c",&a[i]);答案:【scanf("%s",a);】33、问题:02610082:在输入时,字符变量的值必须使用空格间隔,其输入函数可为()。选项:A:scanf("%c%c%c",&a,&b,&c);B:scanf("%c,%c,%c",&a,&b,&c);C:scanf("<",&a,&b,&c);D:循环执行getchar()答案:【scanf("%c%c%c",&a,&b,&c);】34、问题::若intx=3;printf("%d",&x);则系统会报错,没有任何结果。()选项:A:对B:错答案:【错】35、问题:02680021:输入语句scanf("%d,%d,%d",a,b,c);的格式是正确的。()选项:A:对B:错答案:【错】36、问题:02680031:在scanf("%d,%d,%d",&a,&b)函数中,当输入为1,2,3时,将1赋给a,将2赋给b。()选项:A:对B:错答案:【错】37、问题:02680041:printf函数是一个标准库函数,它的函数原型在头文件"string.h"中。()选项:A:对B:错答案:【错】38、问题:02680051:在printf函数中,输出列表的各输出项之间可用冒号分隔。()选项:A:对B:错答案:【错】39、问题:02680061:若intx=3;printf("%d",&x);则系统不会报错,会输出x的地址。()选项:A:对B:错答案:【对】40、问题:02680071:输入语句的格式为:scanf("%d%d%d",&a,&b,&c);是正确。()选项:A:对B:错答案:【对】41、问题:02680081:在scanf("%d,%d",&a,&b)函数中,可以使用一个或多个空格作为两个输入数之间的间隔。()选项:A:对B:错答案:【错】42、问题:02680091:printf函数是一个标准库函数,它的函数原型在头文件stdio.h中。()选项:A:对B:错答案:【对】43、问题::在scanf("%c%c",&c1,&c2)函数中,当输入为字符a,b时,将a赋给c1,将b赋给c2。()选项:A:对B:错答案:【错】44、问题:02680121:printf函数中的格式字符,既可以是大写形式也可以是小写形式。()选项:A:对B:错答案:【错】45、问题:02680131:使用printf函数时,格式控制字符串和各输出项应一一对应。()选项:A:对B:错答案:【对】46、问题:02680141:在printf函数中,格式字符f的意义是:以小数形式输出单精度实数。()选项:A:对B:错答案:【对】47、问题:02680161:输入语句的格式为:scanf("%d,%d,%d",&a;&b;&c)是正确的。()选项:A:对B:错答案:【错】48、问题:02680171:在printf函数中,不同系统对输出表列的求值顺序不一定相同,VC是按从右到左进行的。()选项:A:对B:错答案:【对】第三章单元测试1、问题:已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为()。选项:A:DB:68C:不确定的值D:C答案:【D】2、问题:若有定义intk=7,x=12;,则能使值为3的表达式是()。选项:A:x%=(k%=5)B:x%=(k-k%5)C:x%=k-k%5D:(x%=k)-(k%=5)答案:【(x%=k)-(k%=5)】3、问题:设intn=3;则有表达式++n,n的结果是()。选项:A:2B:3C:4D:5答案:【4】4、问题:表达式18/4*sqrt(4.0)/8值的数据类型为()。选项:A:intB:floatC:doubleD:不确定答案:【double】5、问题:设intn=3;则n++的指是()。选项:A:2B:3C:4D:5答案:【3】6、问题:若有则表达式(k++*1/3)的值是()。选项:A:0B:3D:12答案:【3】7、问题:下列表达式的值,那一个等于0()。选项:A:5%6B:5/6C:5/6.0D:5-6答案:【5/6】8、问题:已知inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。选项:A:2.500000B:2.750000C:3.500000D:0.000000答案:【2.500000】9、问题:在C语言中,要求参加运算的数必须是整数的运算符是%。()选项:A:对B:错答案:【对】10、问题:03180021:若有intm=5,y=2;则执行下面表达式y+=y-=m*=y后,y的值为-16。()选项:A:对B:错答案:【对】11、问题:03210012:判断char型变量c1是否为小写字母的正确表达式为()。选项:A:'a'<=c1<='zB:(c1>=A.&&(c1<='z')C:('a'>=c1)||('z'<=c1)D:(c1>='a')&&(c1<='z')答案:【(c1>='a')&&(c1<='z')】12、问题:03210021:下列运算符中,不属于关系运算符的是()。选项:A:<B:>=C:!D:!=答案:【!】13、问题:03210032:设intn=2;则++n+1==4的结果是()。选项:A:trueB:falseC:1D:0答案:【true】14、问题::在C语言的逻辑运算中,逻辑值"真"用()表示。选项:A:TUREB:整型值1C:trueD:T答案:【true】15、问题:03310021:在C语言的混合运算中,非逻辑值转化为逻辑值的原则是()。选项:A:非“零”为真,“零”值为假B:正数为真,负数为假C:1为真,0为假D:非0为真,0为假答案:【非“零”为真,“零”值为假】16、问题:03310031:在逻辑运算中,逻辑运算符两侧的运算对象数据类型是()。选项:A:只是0或1B:只能是0或非0正数C:只能是整型或字符型数据D:可以是任何合法的类型数据答案:【可以是任何合法的类型数据】17、问题:03310042:若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能满足要求的表达式是()。选项:A:A%2==1B:!(A%2==0)C:!(A%2)D:A%2答案:【!(A%2)】18、问题:03310052:设a=2,b=3,c=4,则表达式a+b>c&&b==c&&a||b+c&&b+c的值为()。选项:A:5B:8C:0D:1答案:【1】19、问题:03310062:下列运算符中优先级最高的是()。选项:A:<B:+C:&&D:!=答案:【+】20、问题::逻辑运算符的优先级别高于算术运算符。()选项:A:对B:错答案:【错】21、问题:03380021:inta=0,b=1,c=2;则表达式a||b+c&&b==c的值为0。()选项:A:对B:错答案:【对】22、问题:03380031:inta=0,b=1,c=2,x,y;则!(x=a)&&(y=b)&&c的值为1。()选项:A:对B:错答案:【对】23、问题::已知各变量的类型说明如下: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)答案:【x%(-3)】24、问题:03410021:设n=10,i=4,则赋值运算n%=i+1执行后,n的值是()。选项:A:0B:3C:2D:1答案:【0】25、问题:03410031:以下叙述中正确的是()。选项:A:a是实型变量,C语言允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。B:在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。C:执行表达式a=b后,在内存中a和b存储单元中的原有值都将被改变,a的值已由原值改变为b的值,b的值由原值变为0。D:已有a=3,b=5当执行了表达式a=b,b=a之后,已使a中的值为5,b中的值为3。答案:【在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。】26、问题:03410051:设有intp,q;以下不正确的语句是()。选项:A:p*=3;B:p/=q;C:p+=3;D:p&&=q;答案:【p&&=q;】27、问题:03410061:已知执行语句x=(y=(z=10)+5)-5;后x、y、z的值是()。选项:A:x=10y=15z=10B:x=10y=10z=10C:x=10y=10z=15D:x=10y=5z=10答案:【x=10y=15z=10】28、问题::由赋值运算符将一个变量和一个表达式连接起来的式子称为"赋值表达式"。()选项:A:对B:错答案:【对】29、问题:03480021:a=b=c=d=10;是一个合法的赋值语句。()选项:A:对B:错答案:【对】30、问题:03610021:sizeof(float)是()。选项:A:一个双精度表达式B:一个整型表达式C:一种函数调用D:一个不合法的表达式答案:【一个整型表达式】31、问题:03610031:C语言中int、char和short三种类型数据在内存中占用的字节数()。选项:A:由用户自己定义B:均为2个字节C:是任意的D:由所用机器的机器字长决定答案:【由所用机器的机器字长决定】32、问题:03610041:逗号表达式(a=3*5,a*4),a+15的值为()。选项:A:15B:60C:30D:不确定答案:【30】33、问题:03610062:以下变量均为int类型,则值不等于7的表达式是()。选项:C:(x=6,x+1,y=6,x+y)答案:【】34、问题:03610072:以下符合C语言语法的赋值表达式是()。选项:A:d=9+e+f=d+9B:d=9+e,f=d+9C:d=9+e,e++,d+9D:d=e=f+7答案:【d=e=f+7】35、问题:03610083:以下使i的运算结果为4的表达式是()。选项:A:inti=0,j=0;(i=3,(j++)+i);B:inti=1,j=0;j=i=((i=3)*2);C:inti=0,j=1;(j==1)?(i=1):(i=3);D:inti=1,j=1;i+=j+=2;答案:【inti=1,j=1;i+=j+=2;】第四章单元测试1-、问题:04210012:以下程序的输出结果是()。intmain(){intm=5;if(m++>5)printf("%d",m);elseprintf("%d",m-);return0;}选项:A:7B:6C:5D:4答案:【6】2、问题:04210022:以下程序的输出结果为()。intmain(){inti=0,j=0,a=6;if((++i>0)&&(++j>0))a++;printf("i=%d,j=%d,a=%d\n",i,j,a);return0;}选项:A:i=0,j=0,a=6B:i=1,j=1,a=7C:i=1,j=0,a=7D:i=0,j=1,a=7答案:【i=1,j=1,a=7】3、问题:04210032:以下程序的输出结果为()。intmain(){inta=2,b=-1,c=2;if(a)if(b<0)c=0;elsec++;printf("%d",c);return0;}选项:A:0B:1C:2D:3答案:【0】4、问题:04210042:若i为int型,且有程序如下,则输出结果是()。if(i%3==0)printf("####");printf("****");选项:A:####B:****C:####****D:无输出结果答案:【####****】5、问题::变量a,b,c已赋初值,则语句if((a=b;)>0)c=a;是正确的。()选项:A:对B:错答案:【错】6、问题:04280021:变量已赋初值,则语句if((x=y+5)>0)z=x;是正确的。()选项:A:对B:错答案:【对】7、问题:04280031:else语句总是和靠它最近的if匹配。()选项:A:对B:错答案:【对】8、问题:04310012:若运行时x=12,则运行结果为()。intmain(){intx,y;scanf("%d",&x);y=x>12?x+10:x-12;printf("%d\n",y);return0;}选项:A:0B:22C:12D:10答案:【0】9、问题:04310023:以下程序的输出结果是()。intmain(){inti=0,j=0,k=6;if((++i>0)||(++j>0))k++;printf("%d,%d,%d\n",i,j,k);return0;}选项:A:0,0,6B:1,0,7C:1,1,7D:0,1,7答案:【1,0,7】10、问题:04310032:若变量都已正确说明,则以下程序段输出为()。inta=1,b=2,c=3;if(a>b)a=b;b=c;c=a;printf("a=%db=%dc=%d\n",a,b,c);选项:A:a=1b=2c=1B:a=1b=2c=3C:a=1b=3c=1D:a=2b=3c=2答案:【a=1b=3c=1】11、问题:04310042:以下不正确的语句为()。选项:A:if(x>y);B:if((x==y)&&(x!=0))x+=y;C:if(x!=y)scanf("%d",&x);elsescanf("%d",&y);D:if(x)答案:【if(x)】1{2、问题:04410012:写出下面程序输出结果()。intmain(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y)case0:a++;case1:b++;}case2:a++;b++;}printf("a=%d,b=%d\n",a,b);}选项:A:a=2,b=1B:a=1,b=1C:a=1,b=0D:a=2,b=2答案:【a=2,b=2】13、问题:04480012:switch语句中一定有default分支。()选项:A:对B:错答案:【错】14、问题:04480021:case后只能跟常量,不能跟变量。()选项:A:对B:错答案:【对】第五章单元测试1、问题:05210012:现已定义整型变量inti=1;执行循环语句while(i++<5);后,i的值为()。选项:A:1B:5C:6D:A、B、C均不正确答案:【6】2、问题:05210022:有程序段intk=10;while(k=0)k=k-1;则下面描述正确的是()。选项:A:while循环执行10次B:循环是无限循环C:循环体语句一次也不执行D:循环体语句执行一次答案:【循环体语句一次也不执行】3、问题:05210032:下列程序段的运行结果是()。intn=0;while(n++<3);printf("%d",n);选项:A:2B:3C:4D:以上都不对答案:【3】4、问题:05210042:设有程序段t=0;while(printf("*")){t++;if(t<3)break;}printf("t=%d",t);下面描述正确的是()。选项:A:其中循环控制表达式与0等价B:其中循环控制表达式与'0'等价C:其中循环控制表达式是不合法的D:以上说法都不对答案:【以上说法都不对】5、问题:05310012:以下程序段()。x=-1;do{x=x*x;}while(!x);选项:A:是死循环B:循环执行2次C:循环执行一次D:有语法错误答案:【循环执行一次】6、问题:05310022:下面程序的运行结果是()。intmain(){inty=10;do{y--;}while(--y);printf("%d\n",y--);}选项:A:-1B:1C:8D:0答案:【0】7、问题:05310032:有语句intx=3;do{printf("%d\n",x-=2);}while(!(--x));则上面程序段()。选项:A:输出的是1B:输出的是1和-2C:输出的是3和0D:是死循环答案:【输出的是1和-2】8、问题:05510013:有以下程序:intmain(){chari;for(;(i=getchar())!='\n';){switch(i-'a'){case0:putchar(i);case1:putchar(i+1);break;case2:putchar(i+2);case3:break;default:putchar(i);break;}}printf("\n");}输入abcde后,程序的输出结果是()。选项:A:abcdeB:abceeC:abbdeD:abccdd答案:【abcee】9"、问题:05510042:以下程序段的输出结果是()。intmain(){inti=5;for(;i<=15;){i++;if(i%4==0)printf("%d,i);elsecontinue;}return0;}选项:A:81216B:812C:1216D:8答案:【81216】10、问题::do-while语句构成的循环不能用其它语句构成的循环来代替。()选项:A:对B:错答案:【错】11、问题:05480021:用do-while语句构成循环时,只要while后的表达式为0时就结束循环。()选项:A:对B:错答案:【对】12、问题:05480031:while循环的while()后没有分号,而do-while循环的while()后一定要有一个分号。()选项:A:对B:错答案:【对】13、问题:05510021:C语言的for语句中的表达式可以部分或全部省略,但两个()不可省略。但当三个表达式均省略后,因缺少判断条件,循环会无限制地进行下去,形成死循环。选项:A:<B:++C:;D:,答案:【;】14、问题:05510031:下面有关for循环的正确描述是()。选项:A:for循环只能用于循环次数已经确定的情况。B:for循环是先执行循环体语句,后判定表达式。C:在for循环中,不能用break语句跳出循环体。D:for循环体语句中,可以包含多条语句,但要用花括号括起来。答案:【for循环体语句中,可以包含多条语句,但要用花括号括起来。】15、问题:05510052:以下不是无限循环的语句为()。选项:A:for(y=0,x=1;x>++y;x=i++)i=x;B:for(;;x++=i);C:while(1){x++;}D:for(i=10;;i--)sum+=i;答案:【for(y=0,x=1;x>++y;x=i++)i=x;】16、问题::for(表达式1;表达式2;表达式3)中,表达式1和表达式3不能同时都是逗号表达式。()选项:A:对B:错答案:【错】17、问题:05580021:for循环中,如果表达式2为空,则该循环一定是死循环。()选项:A:对B:错答案:【错】18、问题:05580031:for(i=0,j=10;i<=j;i++,j--)k=i+j;执行完后,k的值为50。()选项:A:对B:错答案:【错】19、问题:05580041:若a、b均为int型变量,且a=100,则for(b=100;a!=b;++a,b++)printf("----\n")是死循环。()选项:A:对B:错答案:【错】20、问题:05580051:执行语句:for(i=1;i++<4;++i);后;变量i的值是5。(选项:A:对B:错答案:【错】21、问题:05610012:以下程序输出结果为()。intmain(){inti,b,k=0;for(i=1;i<=5;i++){b=i%2;while(b-->=0)k++;}printf("%d,%d\n",k,b);return0;}选项:A:3,-1B:8,-1C:3,0D:8,-2答案:【8,-2】22、问题:05610021:以下程序段中循环体总的执行次数是()。inti,j;for(i=7;i;i--)for(j=0;j<6;j++){......}选项:A:42B:21C:13D:36答案:【42】23、问题:05710012:以下正确的描述是()。选项:A:continue语句的作用是结束整个循环的执行B:只能在循环体内和switch语句内使用break语句C:在循环体内使用break语句或continue语句的作用相同D:从多层循环嵌套中退出时,只能使用goto语句答案:【从多层循环嵌套中退出时,只能使用goto语句】24、问题:05710021:以下不正确的描述是()。选项:A:break语句不能用于循环语句和switch语句外的任何其他语句B:在switch语句中使用break语句或continue语句的作用相同。C:在循环语句中使用continue是为了结束本次循环,而不是终止整个循环的执行。D:在循环语句中使用break是为了使流程跳出循环体,提前结束循环。答案:【在switch语句中使用break语句或continue语句的作用相同。】25、问题::break语句的作用就是结束本层循环。()选项:A:对B:错答案:【对】第六章单元测试1、问题::C语言中,数组名代表()。选项:A:数组全部元素的值B:数组首地址C:数组第一个元素的值D:数组元素的个数答案:【数组首地址】2、问题::以下关于数组的描述正确的是()。选项:A:数组的大小是固定的,但可以有不同的类型的数组元素B:数组的大小是可变的,但所有数组元素的类型必须相同C:数组的大小是固定的,所有数组元素的类型必须相同D:数组的大小是可变的,可以有不同的类型的数组元素答案:【数组的大小是固定的,所有数组元素的类型必须相同】3、问题::在C语言中,引用数组元素时,其数组下标的数据类型允许是()。选项:A:整型常量B:整型表达式C:整型常量或整型表达式D:任何类型的表达式答案:【整型常量或整型表达式】4、问题::设array为一数组,则表达式sizeof(array)/sizeof(array[0])的结果为()。选项:A:array数组首地址B:array数组中元素个数C:array数组中每个元素所占的字节数D:array数组占的总字节数答案:【array数组中元素个数】5、问题::以下对一维数组a的正确说明是()。选项:A:chara(10);B:inta[];C:intk=5,a[k];D:chara[]={'a','b','c'};答案:【chara[]={'a','b','c'};】61234567891、问题:06210021:下面程序中有错误的行是()。、intmain()、{、intx[3]={1};、intk;、scanf("%d",&x);、for(k=1;k<3;k++)、x[0]=x[0]+x[k];、printf("x[0]=%d",x[0]);、return0;0、}选项:A:3B:6C:7D:5答案:【5】7、问题:06210031:若有以下语句,则正确的描述是()。charx[]="12345";chary[]={'1','2','3','4','5'};选项:A:x数组与y数组的长度相同B:x数组长度大于y数组长度C:x数组长度小于y数组长度D:x数组等价于y数组答案:【x数组长度大于y数组长度】8、问题:06210041:以下不正确的数组定义语句是()。选项:A:doublex[5]={2.0,4.0,6.0,8.0,10.0};B:inty[5]={0,1,3,5,7,9};C:charch1[]={'1','2','3','4','5'};D:charch2[]={'\x10','\xa','\x8'};答案:【inty[5]={0,1,3,5,7,9};】9、问题:06210051:以下正确的数组定义语句是()。选项:A:chara[5]={'1','2','3','4','5','\0'};B:intb[2][]={{1},{2}};C:floatc[][3]={1,2,3,4,5};D:chard[5]="CHINA";答案:【floatc[][3]={1,2,3,4,5};】10、问题:06210061:下列一维数组正确初始化是()。选项:A:inta[5]={1,2};B:inta[2]={12,3,4,5};C:inta[5]={,,1,2};D:int*a={12,3,4,5};答案:【inta[5]={1,2};】11、问题:06210071:不能对以下数组进行初始化的语句的是()。选项:A:inta[2]={0};B:inta[2]=[1,2];C:inta[2]={10*1};D:inta[2];a[0]=1;a[1]=2;答案:【inta[2]=[1,2];】12、问题:06210081:若定义intm[10]={9,4,12,8,2,10,7,5,1,3};则m[m[4]+m[8]]的值是()。选项:A:8B:12C:10D:7答案:【8】13、问题:06210091:以下对一维数组a的定义正确的是()。选项:A:chara(10);B:inta[0..100];C:inta[5];D:intk=10;inta[k];答案:【inta[5];】14、问题:06210101:若有说明inta[10];则对数组元素正确的引用是()。选项:A:a[10]B:a[3.5]C:a(0)D:a[0]答案:【a[0]】15、问题:对说明语句inta[10]={6,7,8,9,10};理解正确的是()。选项:A:将5个初值依次赋给a[1]至a[5]。B:将5个初值依次赋给a[0]至a[4]。C:将5个初值依次赋给a[6]至a[10]。D:因为数组长度与初值个数不同,所以语句不正确。答案:【将5个初值依次赋给a[0]至a[4]。】16、问题:06210121:下列程序的输出结果是()。intmain(){inta=0,b[3];b[0]=3;printf(“%d,%d”,b[0];b[1]);return0;}选项:A:3,0B:30C:0,3D:3,不定值答案:【3,不定值】17、问题:06210132:以下程序运行后,输出结果是()。intmain(){intn[5]={0,0,0},i,k=2;for(i=0;i选项:A:不确定值B:2C:1D:0答案:【0】18、问题:06210141:以下对一维整型数组a的正确说明是()。选项:A:inta(10);B:intn=10,a[n];C:intn;scanf("%d",&n);inta[n];D:#defineSIZE10inta[SIZE];答案:【#defineSIZE10inta[SIZE];】19、问题:06210152:执行下面的程序段后,变量k中的值为()。intk=3,s[2];s[0]=k;k=s[1]*10;选项:A:不确定值B:33C:30D:10答案:【不确定值】20、问题:06210161:已知shortint类型变量在内存在占两个字节,有如下定义shortintarray[10]={0,2,4}则数组array在内存所占的字节数为()。选项:A:3B:6C:10D:20答案:【20】21、问题::下列二维数组的初始化哪一个不针对三行四列二维数组()。选项:A:inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};B:inta[][4]={{1},{5},{9}};C:inta[][4]={1,0,0,0,5,6};D:inta[][4]={{1},{0,6},{0,0,11}};答案:【inta[][4]={1,0,0,0,5,6};】22、问题:06310021:若有说明语句:inta[2][4];则对a数组元素的正确引用是()。选项:A:a[0][3]B:a[0][4]C:a[2][2]D:a[2][2+1]答案:【a[0][3]】23、问题:06310031:以下能对二维数组y进行初始化的语句是()。选项:A:staticinty[2][]={{1,0,1},{5,2,3}};B:staticinty[][3]={{1,2,3},{4,5,6}};C:staticinty[2][4]={{1,2,3},{4,5},{6}};D:staticinty[][3]={{1,0,1,0},{},{1,1}};答案:【staticinty[][3]={{1,2,3},{4,5,6}};】24、问题:06310041:若有说明语句:inty[][4]={0,0};则下面叙述不正确的是()。选项:A:数组y的每个元素都可得初值0。B:二维数组y的行数为1。C:该说明等价于inty[][4]={0};D:只有元素y[0][0]和y[0][1]可得到初值0,其余元素均得不到初值0。答案:【只有元素y[0][0]和y[0][1]可得到初值0,其余元素均得不到初值0。】25、问题:06310051:以下各组选项中,均能正确定义二维实型数组s的选项是()。选项:A:floats[3][4];floats[][4];floats[3][]={{1},{0}};B:floats(3,4);floats[][]={{0},{0}};floats[3][4];C:floats[3][4];staticfloats[][4]={{0},{0}};autofloats[][4]={{0},{0},{0}};D:floats[3][4];floats[3][];floats[][4];答案:【floats[3][4];staticfloats[][4]={{0},{0}};autofloats[][4]={{0},{0},{0}};】26、问题:06310061:若有说明语句:inta[][3]={1,2,3,4,5,6,7,8};则a数组的行数为()。选项:A:3B:2C:无确定值D:1答案:【3】27、问题:06310071:若二维数组y有m列,则在y[i][j]前的元素个数为()。选项:A:j*m+iB:i*m+jC:i*m+j-1D:i*m+j+1答案:【i*m+j】28、问题:06310081:以下定义语句错误的是()。选项:A:intx[][3]={{0},{1},{1,2,3}};B:intx[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C:intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};D:intx[][3]={{1,2,3,4}};答案:【intx[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};】29、问题:06310091:若有以下定义:inta[][2]={1,2,3,4,5,6,7};则数组a第一维大小是()。选项:A:不确定B:3C:4D:5答案:【4】30、问题:06310101:以下对二维数组的定义中正确的是()。选项:A:inta[4][]={1,2,3,4,5,6};B:inta[][3];C:inta[][3]={1,2,3,4,5,6};D:inta[][]={{1,2,3},{4,5,6}};答案:【inta[][3]={1,2,3,4,5,6};】3{1、问题::以下程序的输出结果是()。intmain(){inta[4][4]={{1,3,5},{2,4,6},3,5,7}};printf("%d%d%d%d",a[0][3],a[1][2],a[2][1],a[3][0]);return0;}选项:A:0650B:1470C:5430D:不确定答案:【不确定】32、问题::与charstr[]={“china”};初始化赋值不等价的是()。选项:A:charstr[]=“china”;B:charstr[6]={‘c’,’h’,’i’,’n’,’a’,’\o’};C:charstr[]={‘c’,’h’,’i’,’n’,’a’,’\o’};D:charstr[]={‘c’,’h’,’i’,’n’,’a’};答案:【charstr[]={‘c’,’h’,’i’,’n’,’a’};】33、问题:06410021:chararray[]={'c','h','i','n','a'};数组array占用的内存空间是()个字节。选项:A:1B:5C:6D:不确定答案:【5】34、问题:06410031:判断字符串str1是否大于字符串str2,应当使用()。选项:A:if(str1>str2)B:if(strcmp(str1,str2))C:if(strcmp(str2,str1)>0)D:if(strcmp(str1,str2)>0)答案:【if(strcmp(str1,str2)>0)】35、问题:06410051:有两个字符数组a,b,则以下能正确为a,b进行赋值的语句是()。选项:A:gets(a,b);B:scanf("%s%s",&a,&b);C:getchar(a);getchar(b);D:gets(a);gets(b);答案:【gets(a);gets(b);】36、问题:06410061:有字符数组s1[80]和s2[80],则以下能正确对s1,s2进行输出的语句是()。选项:A:puts(s1,s2)B:printf("%s,%s",s1,s2);C:putchar(s1,s2);D:puts(s1),puts(s2);答案:【printf("%s,%s",s1,s2);】37、问题:06410071:以下程序段的运行结果是()。chara[7]="abcdef";charb[4]="ABC";strcpy(a,b);printf("%c",a[5]);选项:A:└┘B:\0C:eD:f答案:【e】38、问题:06410081:以下描述正确的是()选项:A:两个字符串所包含的字符个数相同时,才能比较字符串B:字符个数多的字符串比字符个数少的字符串大C:字符串与相等D:字符串"That"小于字符串"The"答案:【字符串"That"小于字符串"The"】39、问题:06410091:以下对字符数组的描述中错误的是()。选项:A:字符数组中可以存放字符串B:字符数组中的字符串可以整体输入、输出C:可以在赋值语句中通过赋值运算符"="对字符数组整体赋值D:不可以用关系运算符对字符数组中的字符串进行比较答案:【可以在赋值语句中通过赋值运算符"="对字符数组整体赋值】4(0、问题:06410101:若有语句:chars1[10],s2[10]={"books"},则能将字符串books赋给数组s1的正确语句是)。选项:A:s1={"books"};B:strcpy(s1,s2);C:s1=s2;D:strcpy(s2,s1);答案:【strcpy(s1,s2);】41、问题:06410121:下面程序的功能是将字符串s中所有的字符c删除。请选择填空。()#includeintmain(){chars[80];inti,j;gets(s);for(i=j=0;s[i]!='\0';i++)if(s[i]!='c');s[j]='\0';puts(s);return0;}选项:A:s[j++]=s[i]B:s[++j]=s[i]C:s[j]=s[i]D:;答案:【s[j++]=s[i]】42、问题:06410141:下面程序的运行结果是()。#include#includeintmain(){charx[80]="AB",y[80]="LMNP";intn=0;strcat(x,y);while(x[n++]!='\0')y[n]=x[n];puts(y);return0;}选项:A:LBB:ABLMNPC:ABD:LBLMNP答案:【LBLMNP】第七章单元测试1、问题::C程序的基本结构单位是()选项:A:文件B:语句C:函数D:表达式答案:【函数】2、问题::一个C语言程序的执行是()选项:A:从程序的主函数main()开始到主函数main()结束B:从程序的第一个函数开始到最后一个函数结束C:从程序的主函数卖main()开始到最后一个函数结束D:从程序的第一个函数开始到程序的主函数main()结束答案:【从程序的主函数main()开始到主函数main()结束】3、问题::下列函数定义正确的是()选项:A:doublefun(intx,inty)B:doublefun(intx;inty)C:doublefun(intx,y)D:doublefun(intx,y;)答案:【doublefun(intx,inty)】4、问题:07210021:下面说法不正确的是()选项:A:通常C程序是由许多小函数组成的,而不是由少量的大函数组成的B:在源文件中可以用不同的顺序定义函数C:通常调用函数前函数必须被定义或声明D:Dummy(){}是无用的函数答案:【Dummy(){}是无用的函数】5、问题::若函数的形参为一维数组,则下列说法中正确的是()选项:A:调用函数时的对应实参必为数组名B:形参数组可以不指定大小C:形参数组的元素个数必须等于实参数组的元素个数D:形参数组的元素个数必须多于实参数组的元素个数答案:【形参数组可以不指定大小】6、问题:07310021:有以下函数调用语句:func(rec1,rec2+rec3,rec4);该函数调用语句中含有的实参个数是()选项:A:3B:4C:5D:有语法错答案:【3】7、问题::下面程序的结果是()#includeincrement(){staticintx=0;x+=1;printf(“%d”,x);}voidmain(){increment();increment();increment();}选项:B:123C:012D:000答案:【123】8、问题:07510021:下面叙述正确的是()选项:A:全局变量的定义它的文件中的任何地方都是有效的B:全局变量在程序的全部执行过程中一直占用内存单元C:同一文件中的变量不能重名D:使用全局变量有利于程序的模块化和可读性的提高答案:【全局变量在程序的全部执行过程中一直占用内存单元】9、问题:07510031:在C语言中,局部变量的隐含存储类别是()选项:A:autoB:staticC:registerD:无存储类别答案:【auto】第八章单元测试1、问题::有以下说明语句,则下面的叙述不正确的是()。typedefstructstu{inta;floatb}stutype;选项:A:struct是结构体类型的关键字B:stutype是用户定义的结构体类型名C:a和b都是结构体成员名D:structstu是用户定义的结构体类型名答案:【stutype是用户定义的结构体类型名】2、问题::当说明一个结构体变量时系统分配给它的内存是()。选项:A:结构体中最后一个成员所需内存量B:结构体中第一个成员所需内存量C:成员中所占内存量最大者所需的容量D:各成员所需内存量的总和答案:【各成员所需内存量的总和】3{、问题:下列输出字符‘M’的语句是()。structperson{charname[9];intage;};structpersonclass[10]="John",17,"paul",19,"Mary",18,"Adam",16};选项:A:printf("%c",class[3].name);B:printf("%c",class[3].name[1]);C:printf("%c",class[2].name[1]);D:printf("%c",class[2].name[0]);答案:【printf("%c",class[2].name[0]);】4、问题:下列关于结构体变量操作中正确的是()。structstudent{charnum[10];charname[20],sex;intage;floatscore[3];floatave;};选项:A:stu2={"2008002","GaoPing",'M',18,86.3,80.5,89.4,85.4};B:structstudentstu1={"2008001","LiNing",'M',19,84.3,82.5,89.4,85.4};C:if(stu1==stu2)D:printf("%10s%20s%c%3d%4.1f%4.1f%4.1f%4.1",stu1);答案:【structstudentstu1={"2008001","LiNing",'M',19,84.3,82.5,89.4,85.4};】5、问题:以下定义结构体类型的变量st1,其中不正确的是()。选项:A:typedefstructstudent{intnum;intage;}STD;STDst1;B:structstudent{intnum,age;}st1;C:struct{intnum;floatage;}st1;D:structstudent{intnum;intage;};studentst1;答案:【structstudent{intnum;intage;};studentst1;】6、问题:已知职工记录描述为:structworkers{intno;charname[20];charsex;struct{intday;intmonth;intyear;}birth;};structworkersw;设变量w中的“生日”应是“1993年10月25日”,下列对“生日”的正确赋值方式是)。(选项:A:day=25;month=10;year=1993;D:birth.day=25;birth.month=10;birth.year=1993;答案:【】7、问题:08210012:当说明一个共用体变量则系统分配给它的内存是()。选项:A:所有成员一直驻留在内存中B:只有一个成员驻留现在内存中C:部分成员驻留在内存中D:没有成员驻留在内存中答案:【只有一个成员驻留现在内存中】8(、问题:08310012:设有枚举类型定义:enumcolor={red=3,yellow,blue=10,white,black};其中枚举量black的值是)。选项:A:7B:14C:15D:12答案:【12】9、问题:08310022:关于下面变量赋值不正确的是()。enumNUM{zero,first,second}num1;intnum2;选项:A:num1=0;num2=0;B:num1=zero;num2=0;C:num1=0;num2=zero;D:scanf(“%d%d”,&num1,&num2);答案:【num1=0;num2=0;】10、问题:08310032:如下说明语句:enumA{A0=1,A1=3,A2,A3,A4,A5};enumAb;执行b=A3;printf(“%d”,b);输出是()。选项:A:5B:3C:2D:编译出错答案:【5】第九章单元测试1、问题:变量的指针,其含义是指该变量的()。选项:A:值B:地址C:名D:一个标志答案:【地址】2(、问题:已有定义intk=2;int*ptr1.*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是)。选项:A:k=*ptr1+*ptr2;B:k=*ptr1*(*ptr2);C:ptr1=ptr2;D:ptr=k;答案:

温馨提示

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

评论

0/150

提交评论