main( )
{ int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}}; printf(\}
执行后的输出结果是:( D )
A、12 B、11 C、18 D、16 16、有以下程序
void sort(int a[],int n) { in t i,j,t;
for(i=0;i for(j=i+2;j if(a[i] { t=a[i];a[i]=a[j];a[j]=t;} } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa,10); for(i=0;i<10;i++) printf(\ printf(\} 其输出结果是:( C ) A、1,2,3,4,5,6,7,8,9,10, B、10,9,8,7,6,5,4,3,2,1, C、9,2,7,4,5,6,3,8,1,10, D、1,10,3,8,5,6,7,4,9,2, 17、有以下程序 void f(int a[],int i,int j) { int t; if(i { t=a[i]; a[i]=a[j];a[j]=t; f(a,i+1,j-1); } } main( ) { int i,aa[5]={1,2,3,4,5}; f(aa,0,4); for(i=0;i<5;i++) printf(\printf(\} 执行后输出结果是:( A ) A、5,4,3,2,1, B、5,2,3,4,1, C、1,2,3,4,5, D、1,2,3,4,5, 18、 以下程序的输出结果是:(B ) main() { char cf[3][5]={\printf(\} A、\、 \、 \、 \19、 以下程序的输出结果是:( B ) main() { int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1; for(i=0;i<3;i++) for(j=i;j<=i;j++) t=t+b[i][b[j][j]]; printf(\} A、 3 B、 4 C、 1 D、 9 20、有以下程序 main() { int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}}; int i,s=0; for(i=0;i<4;i++) s+=aa[i][1]; printf(\} 程序运行后的输出结果是:( B ) A、 11 B、 19 C、 13 D、、20 21、若有以下定义语句: char s[10],s=”abcd”;printf(“%s\\n”,s); 则运行结果是:( D ) A、输出abcd B、输出a C、输出ab cd D、编译不通过 22、不能把字符串“Hello!”赋给数组b的语句是:( B ) A、char b[10]={‘H’,’e’,’l’,’l’,’o’,’!’}; B、char b[10];b=”Hello!”; C、char b[10]; strcpy(b,”Hello!”); D、char b[10]=”Hello!”; 23、若有以下程序段: char str[]=”ab\\n\\012\\\\\\””; printf(“%d”,strlen(str)); 该程序段的输出结果是:( C ) A、 3 B、 4 C、 6 D、12 24、函数调用strcat(strcpy(str1,str2),str3)的功能是_:( C ) A、将串str1复制到串str2中后在连接到串str3之后 B、将串str1连接到串str2之后再复制到串str3之后 C、将串str2复制到串str1中后再将串str3连接到串str1之后 D、将串str2连接到串str1中后再将串str1复制到串str3中 25、下列程序的输出结果是:( C ) main() { char ch[7]={“65ab21”}; int j,s=0; for(j=0;ch[j])>=’0’&&ch[j]<=’9’;j+=2) s=10*s+ch[j]-‘0’; printf(“%d\\n”,s); } A、12ba56 B、66521 C、6 D、62 26、设已定义char s[]=”\\”Name\\\\Address\\”\\n”;,则字符串s所占的字节数是:( C ) A、19 B、18 C、15 D、14 27、设已定义char c[8]=”Tianjin”和int j,则下面的输出函数调用中错误的是:( D ) A、printf(“%s”,c); B、for(j=0;j<8;j++) printf(“%c”,c[j]); C、puts(c); D、for(j=0;j<8;j++) puts(c[j]); 28、设已定义char a[10]和 int j,则下面输入函数调用中错误的是:( B ) A、scanf(“%s”,a); B、for(j=0;j<9;j++) scanf(“%c”,a[j]); C、gets(a); D、for(j=0;j<9;j++) scanf(“%c”,&a[j]); 29、设已定义char x[8]和int j,为了给该数组赋值,下面语句中正确的是:( D ) A、x[8]=”Turbo C”; B、x=” Turbo C”; C、x[]=”Turbo C”; D、for(j=0;j<7;j++) x[i]=getchar(); 30、有如下程序, main() { int n[5]={0,0,0},j,k=2; for(j=0;j printf(“%d\\n”,n[k]); } 该程序的输出结果是:( D ) A、不确定的值 B、2 C、1 D、0 31. 在C语言中,一维数组的定义方式为:类型说明符 数组名( A )。 A.[常量表达式] B.[整型表达式] C.[整型常量]或[整型表达式] D.[整型常量] 32. 若有说明:int a[10];,则对a数组元素的正确引用是:( D )。 A.a[10] B.a[3.5] C.a(5) D.a[10-10] 33. 在C语言中,引用数组元素时,其数组下标的数据类型允许是:( C )。 A.字符常量 B.浮点型常量 C.整型常量或整型表达式 D.任何类型的表达式 34. 下列数组定义、初始化或赋值语句中,正确的是:( D )。 A.int x[5]={1,2,3,4,5,6}; B.int n=8; int score[n]; C.int a[8]; a[8]=100; D.int x[]={1,2,3,4,5,6}; 35. 合法的数组说明语句是:( B )。 A.int a[]=“string”; B.char a[]={0,1,2,3,4,5}; C.char a =“string”; D.int a[5]={0,1,2,3,4,5}; 36. 已知int a[][3]={1,2,3,4,5,6,7};,则数组a的第一维的大小是:( B )。 A.2 B.3 C.4 D.无确定值 37. 若有说明:int a[3][4];,则对a数组元素的非法引用是:( D )。 A.a[0][2*1] B.a[1][3] C.a[4-2][0] D.a[0][4] 38. 已有定义:char a[]=\,以下叙述中正确的是:( C )。 A.数组a和数组b的长度相同 B.a数组长度小于b数组长度 C.a数组长度大于b数组长度 D.数组a和数组b等价 39. 对两个数组a和b进行如下初始化: char a[]=“ABCDEF”; char b[]={?A?, ?B?, ?C?, ?D?, ?E?, ?F?}; 则以下叙述正确的是:( D )。 A.数组a与数组b完全相同 B.数组a与数组b长度相同 C.数组a与数组b中都存放字符串 D.数组a比数组b长度长 40. 有下面的程序段:( D ) char a[3],b[]=“China”; a=b; 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. printf(“%s”,a); A.运行后将输出China B.运行后将输出Ch C.运行后将输出Chi D.编译出错 下面程序的运行结果是:( A )。 char c[5]={?a?, ?b?, ?\\0?, ?c?, ?\\0?}; printf(“%s”,c); A.ab B.abc C.ab\\0 D.ab\\0c\\0 设有数组定义:char array[]=“china”;,则数组array所占的空间为:( C )。 A.4个字节 B.5个字节 C.6个字节 D.7个字节 判断字符串s1是否大于字符串s2,应当使用:( D )。 A.if(s1>s2) B.if(strcmp(s1,s2)) C.if(strcmp(s2,s1)>0) D.if(strcmp(s1,s2)>0) 若有说明:int a[][4]={0,0};,则下面不正确的叙述是:( D )。 A.数组a的每个元素都可得到初值0 B.二维数组a的第一维大小为1 C.因为二维数组a中初值的个数不能被第二维大小的值整除,则第一维的大小等于所得商数再加1,故数组a的行数为1 D.只有元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值 下列语句中,不正确的是:( A )。 A.char str[5]=\ B.char str[]={'h','e','l','l','o','\\0'}; C.char str[5]={\D.char str[100]=\下面错误的初始化语句是:( D )。 A.char str[]=\B.char str[100]=\ C.char str[]={'h','e','l','l','o'}; D.char str[]={'hello'}; 定义了一维int型数组a[10]后,下面错误的引用是:( B )。 A.a[0]=1; B.a[10]=2; C.a[0]=5*2; D.a[1]=a[2]*a[0]; 下面的二维数组初始化语句中,错误的是:( C )。 A.float b[2][2]={0.1,0.2,0.3,0.4}; B.int a[][2]={{1,2},{3,4}}; C.int a[2][]= {{1,2},{3,4}}; D.float a[2][2]={0}; 引用数组元素时,数组下标可以是:( D )。 A.整型常量 B.整型变量 C.整型表达式 D.以上均可 定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为:( B )。 A.24 B.25 C.18 D.17 strlen(\的结果为:( B )。 A.0 B.1 C.2 D.3 下面程序的运行结果是:( C )。 main()