2011年计算机等级二级C语言章节习题及答案(9)
7.11 有以下程序 main() { char a[]={ ′a′, ′b′, ′c′,′d′, ′e′, ′f′, ′g′,′h′,′\0′}; int i,j; i=sizeof(a); j=strlen(a); printf("%d,%d\b",i,j); } 程序运行后的输出结果是 A)9,9 B)8,9 C)1,8 D)9,8 正确答案:D 7.12 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是 A)3 B)6 C)10 D)20 正确答案:D 7.13 以下能对二维数组c进行正确的初始化的语句是 A)int c[3][]={{3},{3},{4}}; B)int c[][3]={{3},{3},{4}}; C)int c[3][2]={{3},{3},{4},{5}}; D)int c[][3]={{3},{},{3}}; 正确答案:B 7.14 在C语言中,一维数组的定义方法为 类型说明符 数组名 A)[常量表达式] B)[整型常量] C)[整型变量] D)[整型常量]或[整型表达式] 正确答案:A 7.15 若二维数组a有m列,则计算任一元素a[i][j]在数组中相对位置的公式为 (假设a[0][0]位于数组的第一个位置上) A)i*m+j B)j*m+I C)i*m+j-1 D)i*m+j+1 正确答案:A 7.16 下面程序输出的结果是 main() { int i; int a[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++) printf("%d ",a[2-i][i]); } A)1 5 9 B)7 5 3 C)3 5 7 D)5 9 1 正确答案:B 7.17 以下不能对二维数组a进行正确初始化的语句是 A)int a[2][3]={0}; B)int a[][3]={{1,2},{0}}; C)int a[2][3]={{1,2},{3,4},{5,6}}; D)int a[][3]={1,2,3,4,5,6}; 正确答案:C 7.18 阅读下面程序,则程序段的功能是 #include "stdio.h" main() { int c[]={23,1,56,234,7,0,34},i,j,t; for(i=1;i<7;i++) { t=c[i];j=i-1; while(j>=0 && t>c[j]) {c[j+1]=c[j];j--;} c[j+1]=t; } for(i=0;i<7;i++) printf("%d ",c[i]); putchar(′\n′); } A)对数组元素的升序排列 B)对数组元素的降序排列 C)对数组元素的倒序排列 D)对数组元素的随机排列 正确答案:B 7.19 下列选项中错误的说明语句是 A)char a[]={′t′,′o′,′y′,′o′,′u′,′\0′}; B)char a[]={"toyou\0"}; C)char a[]="toyou\0"; D)char a[]=′toyou\0′; 正确答案:D 7.20 下述对C语言字符数组的描述中错误的是 A)字符数组的下标从0开始 B)字符数组中的字符串可以进行整体输入/输出 C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D)字符数组可以存放字符串 正确答案:C 相关资料 |