题目1
假定有一个元素类型为int的数组a[10],它所占用的存储空间的字节数为( )。 a. 40 b. 80 c. 10 d. 20
题目2
假定一维数组的定义为“char* a[8];”,则该数组所占用的存储空间的字节数为( )。 a. 16 b. 8 c. d. 32
题目3
假定有一个定义语句为“int a[10]={3,4,2,8,6};”,则元素a[5]的值为( )。 a. 0 b. 6 c. 2 d. 8
题目4
在下面的一维数组定义语句中,有语法错误的是( )。 a. int a[];
b. int a[5]; c. int a[10]={0}; d. int a[]={1,2,3};
题目5
假定二维数组的定义语句为“int a[3][5];”,则该数组所含元素的个数为( )。 a. 10 b. 12 c. 15 d. 8
题目6
假定有一个定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][2]的值为( )。 a. 6 b. 8 c. 4 d. 2
题目7
对于一个长度为n的字符串,保存它至少需要占用的存储字节数为( )。 a. n-1 b. n+1 c. n d. n+2
题目8
对于一个二维字符数组a[M][N],存储每个字符串的长度至多为( )。 a. N-1 b. N c. M d. M-1
题目9
若需要比较两个字符串的大小,则选用的函数是( )。 a. strlen b. strcmp c. strcpy d. strcat 二、判断题
题目10
一维数组元素带有两个下标。
对 错
题目11
对于二维数组元素,数组名后使用两对中括号。
对 错
题目12
在一维数组的定义语句中,给数组赋初值的部分是用一对花括号括起来的数据表。
对 错
题目13
在一维数组的定义语句中,数组名前为元素类型关键字。
对 错
题目14
在二维数组的定义语句中,数组名后带有两对圆括号。
对 错
题目15
假定二维数组的定义语句为“double a[M][N];”,则每个数组元素的列下标取值范围在1~N之间。
对 错
题目16
使用“typedef char BB[10];”语句定义标识符BB为含有10个元素的一维字符数组。
对 错
题目17
使用“typedef char BB[10][50];”语句定义标识符BB为含有10行50列共500个元素的二维字符数组类型。
对 错
题目18
一个二维字符数组a[10][20]中存储每个字符串的最大长度为19。
对 错
三、程序填空题
题目19
#include int a[8]={10,8,6,15,9,21,8,16}; int i,x=a[0]; for(i=1;i<8;i++) if(a[i]>x) x=a[i]; printf(\"x=%d\\n\} 答案: 题目20 #include int a[8]={12,15,20,8,5,9,16,10}; int i,s[3]={0}; for(i=0; i<8; i++) s[a[i]%3]+=a[i]; printf(\"%d %d %d\\n\} 答案: 题目21 #include int a[3][3]={{3,8,6},{5,9,2},{8,5,12}}; int i,j,b[3]={0}; for(i=0;i<3;i++) for(j=0;j<3;j++) b[j]+=a[i][j]; for(j=0; j<3; j++) printf(\"%d \} 答案: 题目22 #include int a[3][4]={{60,75,83,52},{76,94,88,35},{80,74,46,90}}; int i,j,x=a[0][0],y=-1; for(i=0; i<3; i++) for(j=0; j<4; j++) if(a[i][j]>x) {y=x; x=a[i][j];} else if(a[i][j]>y) y=a[i][j]; printf(\"%d %d\\n\} 答案: 题目23 #include char a[10],b[10],c[10]; int c1,c2,c3; scanf(\"%s %s %s\ c1=strlen(a); c2=strlen(b); c3=strlen(c); if(c1>c2 && c1>c3) printf(\"%s \ else if(c2>c1 && c2>c3) printf(\"%s \ else printf(\"%s \} 答案: 题目24 #include char a[]=\"abcdbfbgacd\"; int i=0,i1=0,i2=0,i3=0; for(i=0; a[i]!='\\0'; i++) { switch(a[i]) { case 'a': i1++; break; case 'b': i2++; break; case 'c': i3++; break; } } printf(\"%d %d %d %d\\n\} 答案: 题目25 #include char a[]=\"12342345342356\"; int i,c[7]={0}; for(i=0; a[i]!='\\0'; i++) c[a[i]-48]++; //48为数字字符0的ASCII码 for(i=1; i<7; i++) printf(\"%d \} 答案: 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务