c语言第六单元检测_第1页
c语言第六单元检测_第2页
c语言第六单元检测_第3页
c语言第六单元检测_第4页
c语言第六单元检测_第5页
免费预览已结束,剩余100页可下载查看

下载本文档

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

文档简介

1、1下述对C语言字符数组的描述中正确的是()。(1.5 分)1.5分206419719011.50D4c9f34eddd154A、一维数组的元素在引用时其下标大小没有限制B、任何一个一维数组的元素,可以根据内存的情况按照其先后顺序以连续或非连续的 方式占用存储空间C、一维数组的第一个元素是其下标为1的元素D、任何一维数组的名称都是该数组存储单元的开始地址,且其每个元素按照顺序连续分配存储空间我的答案:D2若给出以下定义:char x ="abcdefg"char y ='a','b','c','d','e

2、','f,'g'则正确的叙述为()。(1.5 分)1.5分206419719001.50D anil i33f9f1b9ac3a4a :jik_jiii i-aIM.mi A、数组x和数组y的长度相同B、数组x的长度小于数组y的长度C、数组x和数组y等价? D、数组x的长度大于数组y的长度我的答案:D3假定int类型变量占用两个字节,其有定义: int x10=0,2,4;,则数组x在内存中所占字节数是()(1.5 分)1.5分206419719011.50D4d3d262ee6404A、10C、D、#我的答案:D当输入为"quert?"时,

3、下面程序片段的输出结果是(char c;c=getchar();while(c=getchar()!='?') putchar(+c);(1.5 分)1.5分206419719011.50A1d2f69f8807642A、 vfsuB、rvfsu? C、quert? D、Quert我的答案:A5下面程序片段的运行结果是 。int a6,i;for(i=1;i<6;i+)ai=9*(i-2+4*(i>3)%5;printf("%2d",ai);(1.5 分)1.5分206419719011.50B9bf6e9e5904f44-4 0 4 0 3B、

4、-4 0 4 4 3C、-4 0 4 0 4D、-4 0 4 4 0我的答案:B卜列语句中,不正确的是 ()。(1.5 分)1.5分206419719001.50A2d8cf869ffc548A、char a2='1','2','3'B、char a2='1'C、 char a2=1,2;D、char a2='1','2'我的答案:A 7以下程序片段的输出结果是()int i, a10;for(i=9;i>=0;i-) ai=10-i;printf("%d%d%d",a2,

5、a5,a8)(1.5 分)1.5分206419719001.50D9f9dd548fa024cA、741B、369C、258D、#我的答案:D8下列字符串赋值语句中,不能正确把字符串"C program"赋给数组的语句是: (1.5 分)1.5分A、char a10; strcpy(a2, “C program");B、 char a= C , ,p,r,o,g,r,a ,m;C、 char a10; a= "C program"D、 char a10= " C program " ;我的答案:C 9执行下面的程序段后,变量

6、 k中的值为()。int k=3, s2;s0=k; k=s1*10;(1.5 分)1.5分206419719001.50D192270331c184? A、33B、10C、30D、不定值我的答案:D10不是给数组的第一个元素赋值的语句是(1.5 分)1.5分206419719001.50C1454e0faf7de45A、int a2=1*2;B、int a2=1C、a1=1;D、int a2;scanf ( "d”,&a0);我的答案:C11若有以下说明:int a12=1,2,3,4,5,6,7,8,9,10,11,12;char c='a',d,g;则数

7、值为4的表达式是(1.5 分)1.5分2064197190150B55e8656f7c3549A、a4B、a'd'-cC、a'd'-'c'D、ag-c我的答案:B12以下不正确的定义语句是()。(1.5 分)206419719001.50A4a744886825941.5分A、int y5=0,1,3,5,7,9;B、char c1=' 1 ' , ' 2' , ' 3' , ' 4' , ' 5' ;C、char c2= X10 ' xa z x8 '

8、; ;double x5=2.0,4.0,6.0,8.0,10.0;我的答案:A13对以下说明语句的正确理解是()。int a10=6,7,8,9,10;(1.5 分)1.5分206419719001.50Adf6a2b0837634? A、将5个初值依次赋给a0至a4?B、因为数组长度与初值的个数不相同,所以此语句不正确? C、将5个初值依次赋给a6至a10? D、将5个初值依次赋给 a1至a5我的答案:A 14以下程序片段运行后,输出结果是()。int a10, al尸1,3,6,9,10, a2 =2,4,7,8,15,i=0,j=0,k;for(k=0;k<4;k+)if(a1i

9、<a2j)ak=a1i+;else ak=a2j+;for(k=0;k<4;k+) printf("%d",ak );(1.5 分)1.5分Ce40b6cb4f8e94A、1324B、2413C、1234D、4321我的答案:C15若有定义和语句:char s10;s="abcd"printf("%sn",s则结果是(以下J代表空格)()O(1.5 分)1.5分206419719A、输出a1.5cf9ce0d6f02145? B、编译不通过? C、输出 abcd -? D、输出abcd我的答案:B16有字符数组a80和b8

10、0,则正确的输出语句是 。(1.5 分)1.5分206419719001.50B| cadaaa78ccde4A、printf( " %s,%s” ,a口,b);B、 puts(a),puts(b);putchar(a,b);D、 puts (a,b);我的答案:B17若有以下程序片段:char str口 = "abn012""printf("%d", strlen(str);上面程序片段的输出结果是()。(1.5 分)1.5分206419719021.50De668024ce9664? A、4?B、3C、12D、我的答案:D18以下

11、对一维整型数组的正确说明是(1.5 分)1.5分206419719001.50Cfc6e84ce7e7741A、int n=10,an;? B、int a(10);?C、define SIZE 10int aSIZE;? D、int n; scanf( " %d " ,&n); int an;我的答案:C19若有如下定义和语句:char s12=a book!printf( " %d ” ,strlen(s);则输出结果是:。(1.5 分)1.5分206419719011.50B mm1 ran87d8bb91f6694MHIMIBa_llll -A、B、

12、C、7D、12我的答案:B20下述对C语言字符数组的描述中错误的是(1.5 分)1.5分206419719A、1.5668ea11a0a044字符数组中的字符串可以整体输入、输出B、字符数组可以存放字符串C、可以在赋值语句中通过赋值运算符"="对字符数组整体赋值D、不可以用关系运算符对字符数组中的字符串进行比较我的答案:C21判断字符串a和b是否相等,应当使用 (1.5 分)0.0分A、if (a= =b)B、if (strcpy(a,b)C、if (a=b)if(strcmp(a,b)我的答案:A22下列程序片段的功能是输入10个整数存入数组a,再输入一个整数 x,在数组

13、a中查找x。找到则输出x在10个整数中的序号(从 1开始);找不到则输出 0。请在 上填写正确的代码。int i,a10,x,flag=0;for(i=0;i<10;i+)scanf("%d”,&ai);scanf("%d",&x );for(i=0;i<10;i+) if ( flag=i+1; break;printf("%dn", flag );(1.5 分)1.5分206419719021.50aabcf66coe574aA、!(x-ai)-miibjihb m ian tin a Mil ia1"

14、ihimui bim jii ii unaMJinB m ibo mi i Mil ia- naia.1iiuaiui IIM aB、x!=ai?C、!x-ai? D、x-ai我的答案:A23设有以下程序段,则执行该片段后()。int x = 0, s = 0;while ( !x != 0 ) s += + x;printf (%d,s );(1.5 分)0.0分206419719011.50Ccae74aa2f10b4eA、运行程序段后输出1B、运行程序段后输出C、程序段执行无限次D、程序段中的控制表达式是非法的我的答案:C24以下正确的描述是(1.5 分)1.5分,5206419719d

15、e9d67a1b2ae4A、break语句只能在循环体内和switch语句体内使用C、B、从多层循环嵌套中退出时,只能使用goto语句在循环体内使用 break语句或continue语句的作用相同D、continue语句的作用是结束整个循环的执行我的答案:A25程序段如下int k=0;while(k+<=2); printf("last=%dn",k);则执行输出结果是last=()。(1.5 分)0.0分A、B、4C、2D、无结果我的答案:A26设有 char str尸'Beijing"则执行 printf("%dn", st

16、rlen(strcpy(str,"China" );后的输出结果为 ()。(1.5 分)1.5分206419719001.50C mm1 ran7957300720ce4MHIMIBa_llll -A、B、14C、D、12我的答案:C27str120,str210 中,下设有两字符串“Beijing "、“ China”分别存放在字符数组面语句中能把 “China”连接到“ Beijing ”之后的为:(1.5 分)1.5分206419719011.5Ba18abb43ed8d4? A、strcpy(str1, “China ");B、strcat(st

17、r1 , “China ");C、strcat(str2 , “ Beijing ");D、strcpy(str1,str2);我的答案:B28设有数组定义:char array 口 ="China"则数组array所占的空间为()个字节。(1.5 分)1.5分A、B、C、D、我的答案:D29已知:char a 20= "abc",b 20= "defghi"则执行下列语句输出结果为()。printf ("%d",strlen (strcpy (a,b);(1.5 分)1.5分206419719

18、011.50A99226699178f49A、B、C、D、以上答案都不正确我的答案:A30卜列定义正确的是(1.5 分)1.5分206419719001.50D47cccfeb80784aA、int b2=2,5,3;B、int 4e4;C、int a(10);D、int a=1,2,3,4,5;我的答案:D31以下程序的输出结果是()。main() char str12= 's','t','r','i','n','g' ,''0'printf("%dn"

19、,strlen(str );206419719001.50C5baf7e98b89a41.5分A、71211C、6D、我的答案:C32以下程序片段运行后,输出结果是()。int n5=0,0,0,i,k=2;for(i=0;i<k;i+) ni=ni+1;printf("%dn",nk )(1.5 分)1.5分206419719001.50D524a52f1a0314dA、B、不确定的值C、? D、 0我的答案:D33若有定义和语句:char s10;s="abcd"printf("%sn",s );则结果是(以下一代表空格)(

20、)。206419719001.50B72876c2644564A、输出aB、编译不通过C、输出abcdD、我的答案:B34程序段如下int k=0; while(k+<=2) printf("%d",k);则执行结果是()。(1.5 分)1.5分206419719011.50C16a6774a07b74A、234012C、123D、无结果我的答案:C35设有char str10,下列语句正确的是(1.5分)1.5分206419719001.50D M Jill IM-SII IM-UI 1089fef2df2b4411 -UIIBJIIIB II IKMH 1.

21、71;III *-( UIIBJIUB-.II IB-Till li 1L-JJA、printf("%s",str0);scanf("%s",&str);printf("%c",str);printf("%s",str);我的答案:D36若有以下定义int a5=5,4,3,2,1;char b= 'a' ,c,d,e;则下面表达式中数值为2的是(1.5 分)1.5分2064197191.5A、ae -cB、a4C、fc5c0385f6034aa,e,-,a,我的答案:C37判断两个字符串是

22、否相等,正确的表达方式是()。(1.5 分)while(s1=s2 )B、while(s1=s2 )C、 while(strcmp(s1,s2 ) =0)D、 while(strcmp(s1,s2 ) =0)我的答案:C38以下程序段给数组所有的元素输入数据,请选择正确答案填入int a10,i=0;while(i<10 ) scanf("%d", )(1.5 分)1.5分206419719011.50C1ded8ba6859a4A、&ai+1B、a+iC、&ai+D、&a+i我的答案:C39执行以下程序段后,b的值是static int a.

23、5,3,7,2,1,5,4,10;int b=0,k;for(k=0;k<8;k+=2)b+=ak;(1.5 分)0.0分206419719001.50Ac4dc5f4c786b4aA、27B、17C、13D、有语法错误我的答案:A40如果从键盘上输入:ABC时,下面的程序片段 输出的结果是()。char ss10="12345”;strcat(ss, "6789")gets(ss ) ;printf("%sn",ss );(1.5 分)1.5分206419719011.50A、123456ABCB、ABC9C、ABCD、c6dc805d

24、3a1a4ABC456789我的答案:C二、填空题(题数:20,共40.0分)1下面程序片段的功能是输出数组s中最大元素的下标,请填空。int k, p,s=1, -9, 7, 2,-10, 3;for (p =0, k =p; p< 6; p+)if (sp>sk ) printf ("%d n", );(2.0 分)1.0分20641971921<p style="margin 2.0018a8cec02d2b4第一空:k=p第二空:k2以下程序的功能是:从键盘上输入若干个学生的成绩,计算出平均成绩并输出,并将 低于平时成绩的学生输出,用输入

25、负数结束输入。请填空。float x1000, sum = 0.0, ave, a;int n = 0, i;scanf("%f", &a);while (a >= 0.0&& n < 1000)sum +=; xn = a;n+;scanf("%f" , &a );ave =printf("ave=%fn" , ave);for (i = 0; i < n; i+)if (xi < ave ) printf("%fn", xi);(2.0 分)2.0分206

26、41971922<p style="margin 2.00c6b0cd4411394我的答案:第一空:a第二空:sum/n3下面程序中的数组 a包括10个整数元素,从a中第二个元素起,分别将后项减前项之差存 入数组b,并按每行3个元素输出数组 bo请填空。main()int a10, b10, i;for (i = 0; i < 10; i+)scanf_s("%d", &ai);for (i = 1; i<=; i+)bi-1=;for (i =0; i <9; i+)if (=0) printf("n");p

27、rintf("%-5d", bi);(2.0 分)1.32 分20641971922<p><span style 2.00ab3ac2bbfbe04第一空:9第二空:ai-ai-1第三空:i%34下列程序的功能是输入N个实数,然后依次输出前l个实数和、前2个实数和、前 N个实数和。填写程序中缺少的语句。#define N 10main()float fN,s=0.0;int i ;for(i=0;i< ;i+)scanf("%f",&fi);for(i=1;i<=N;i+) s=s+fi;printf("s

28、um of NO %2d%fn",i,);我的答案:(2.0 分)1.0分206419719| 2| 1| <p><span style=" 2.0096610d5abd5c4我的答案:第一空:N第二空:x5以下程序片段的功能是把一个整数转换成二进制数,所得二进制数的每一位放在一维数组中,输出此二进制数。注意:二进制数的最低位在数组的第一个元素中。int b16, x, k, r, i;scanf("%d", &x);printf("%dn", x);k = -1;dob+k = r;x /=while (x

29、 >= 1);for (i = k; i>=0; i-)printf("%d", bi);(2.0 分)2.0分20641971921<p style="margin2.0011055359928a974我的答案:第一空:第二空:C语言中,数组元素的下标下限为数字 。(2.0 分)2.0分20641971920<p><span style=" 2.00|41380dfb0f424a我的答案:第一空:0 7C程序在执行过程中,不检查数组下标是否 。 (2.0 分)2.0分 20641971920<p><

30、span style="2.00fc633f01251e49我的答案:第一空:越界8以下程序片段,对从键盘输入由5个字符组成的单词,判断此单词是不是“ hello ",并显不'结果。char str = ' h' , ' e' ,' l ' , ' l ' , ' o' ,str15;i,flag;gets(strl);flag=0;for(i=0;i<5;i+)if (str1i!=stri)flag= ; break;if(flag ) printf("this wo

31、rd is not hello" );else printf("this word is hello" );(2.0 分)2.0分20641971921<p><span style="2.00e985fcdc0ed845我的答案:第一空:int第二空:19函数mystrcat实现字符串链接(s2链接到si )。请将下面函数补充完整。void mystrcat(char a , char b) int i=0, j=0;for(i=0; ai!='0' i+);for(j=0; bj!='0' j+,i+)

32、;(2.0 分)2.0分20641971922<p style=2.00007648609a514我的答案:第一空:ai=bj第二空:ai='0'#下面程序段完成功能是:输出两个字符串中对应字符相等的字符。请填空。char x= "language"char y= "llngga"int i=0;while (xi!=&&yi!='0') if(xi=yi) printf("%c", );else i+;(2.0 分)1.0分20641971922<p style=2.009

33、0158bf6c6d44我的答案:第一空:'0'第二空:xi+11若输入字母c,下面程序片段输出结果为char c1,c2;c1=getchar();while(c1<97|c1>122)c1=getchar();c2=c1-32;printf( "%cn",c2);(2.0 分)2.0分20641971921<p style="margin2.001II81f67b46c6ad4我的答案:第一空:C12当执行以下程序段后,k的值是int a,d,k;a=10; d=5;k=0;do k+; while (a>d+);(2.

34、0 分)0.0分206419719|2|o| <p>当执行以下程序2.0047162584e8f342我的答案:第一空:513下列程序片段的功能是用冒泡法对十个数由大到小排序。int a10, i, j, t;for(i=0;i<10;i+)scanf( " %d ” ,&ai);for (j=0;j<=8;j+)for(i=0;i<=; i+)if (ai<ai+1)t=; ai=ai+1; ai+1=t;printf( " the sorted numbers: n ");for ( i=0; i<10; i+

35、)printf( " d ",ai);(2.0 分)1.0分206419719| 2| 2| <p>下列程序片段的2.006ffa9813a9c14b我的答案:第一空:10-j第二空:ai14以下程序以每一行输出4个数据的形式输出a数组,填写程序中缺少的语句。int a20,i;for(i=0;i<20;i+)ai=i;for(i=0;i<20;i+) if ( ) printf("n" )printf("%3d",ai);printf("n");(2.0 分)我的答案:第一空:i%4=01

36、5下面程序片段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。请填空。int n=0,c;c=getchar();while()if(c>=' 0' &&c<=' 9' )n+;c=getchar();(2.0 分)0.0分20641971921<p style="margin2.00ebc0e74865a84我的答案:第一空:c!=' n'16以下程序片段可求出所有水仙花数(指3位正整数中各位数字立方和等于该数本身,如 153=1 3+53 +33),请填空。int x, y ,z, a10, m, i=0;printf( " shui xian huan shu :n ” );for(m=;m<1000;m+)x=m/100;y= (m%100)/10;if(m=x*x*x+y*y*y*y+z*z*z)ai=m; i+; for( x=0;x<i ; x+)printf( “ %6d ",ax);(2.0 分)2.0分20641971922|

温馨提示

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

评论

0/150

提交评论