C语言数组选择题(新)

更新时间:2023-09-09 06:50:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1、以下定义语句中,错误的是________。

A) int a[]={1,2}; B) char a[]={\C) char s[10]={\D

2、以下对一维数组a进行正确初始化的是__________。 A) int a[10]=(0,0,0,0,0); B) int a[10]={ }; C) int a[ ]={0}; D) int a[10]={ 10*2}; C

3、以下对二维数组a进行正确初始化的是__________。

A) int a[2][3]={ {1,2},{3,4},{5,6} }; B) int a[ ][3]={1,2,3,4,5,6 };

C) int a[2][ ]={1,2,3,4,5,6}; D) int a[2][ ]={ { 1,2},{3,4}}; B

4、在定义int a[5][4]; 之后,对a的引用正确的是________。 A) a[2][4] B) a[1,3] C) a[4][3] D) a[5][0] C

5、以下给字符数组str定义和赋值正确的是________。 A) char str[10]; str={\B) char str[ ]={\

C) char str[10]; strcpy( str,\

D) char str[10]={\B

6、以下一维数组a的正确定义是________ 。 A) int a(10); B) int n=10,a[n]; C) int n; D) #define SIZE 10 scanf(\ int a[n]; D

7、在执行语句: int a[ ][3]={1,2,3,4,5,6}; 后, a[1][0]的值是________。

A) 4 B) 1 C) 2 D) 5 A

8、当接受用户输入的含有空格的字符串时,应使用________函数。 A) gets( ) B) getchar( ) C) scanf( ) D) printf( ) A

9、在定义int a[5][6];

后,数组a中的第10个元素是________。(设a[0][0]为第一个元素) A) a[2][5] B) a[2][4] C) a[1][3] D) a[1][5] C

10、执行下面的程序段后,变量k中的值为__________。 int k=3,s[2]; s[0]=k; k=s[1]*10; A) 不定值 B) 33 C) 30 D) 10 A

11、下列程序执行后的输出结果是__________。 main() {int a,b[5]; a=0; b[0]=3;

printf(\A) 3,0 B) 3 0 C) 0,3 D) 3,不定值 D

12、设有数组定义:char array[]=\则strlen(array) 的值为________ 。 A) 4 B) 5 C) 6 D) 7 B

13、下列程序执行后的输出结果是__________。 main()

{ int i,j,a[3][3];

for(i=0;i<3;i++)

for(j=0;j<=i;j++) a[i][j]=i*j; printf(\}

A) 2,2 B) 不定值,2 C) 2 D) 2,0 B

14、设有数组定义:char array[]=\则数组array所占 的存储空间为________。

A) 4个字节 B) 5个字节 C) 6个字节 D) 7个字节 C

15、设有数组定义:char array[10]= \则数组array所占 的存储空间为________。

A) 4个字节 B) 5个字节 C) 6个字节 D) 10个字节 D

16、已知数组a的赋值情况如下所示,则执行语句a[2]++;后a[1]和a[2]的值 分别是________。

a[0] a[1] a[2] a[3] a[4] ┌──┬──┬──┬──┬──┐ │ 10 │ 20 │ 30 │ 40 │ 50 │

└──┴──┴──┴──┴──┘ A) 20和30 B) 20和31 C) 21和30 D) 21和31 B

17、以下程序输出a数组中的最小值及其下标,在划线处应填入的是________。 main( )

{ int i,p=0,a[10];

for(i=0;i<10;i++) scanf(\ for(i=1;i<10;i++)

if(a[i]

A) i=p B) a[p]=a[i] C) p=j D) p=i D

18、以下程序的输出结果是________。 main( )

{ int i,p=0,a[10]={1,5,9,0,-3,8,7,0,1,2}; for(i=1;i<10;i++) if(a[i]

A) -3,4 B) 0,1

C) 9,2 D) 2,9 A

19、有如下说明:

int a[10]={0,1,2,3,4,5,6,7,8,9}; 则数值不为9的表达式是________。 A) a[10-1] B) a[8] C) a[9]-0 D) a[9]-a[0] B

20、有如下程序 main()

{ int n[5]={0,0,0},i,k=3; for(i=0;i

该程序的输出结果是________。 A) 不确定的值 B) 4 C) 2 D) 0 D

21、有如下程序 main()

{ int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0; for(i=1;i<3;i++)

for(j=0;j<=i;j++) s+=a[i][j];

printf(\}

该程序的输出结果是________。 A) 18 B) 19 C) 20 D) 21 A

22、以下程序的输出结果是________。 main()

{ int i,x[9]={9,8,7,6,5,4,3,2,1};

for(i=0;i<4;i+=2) printf(\ }

A) 5 2 B) 5 1 C) 5 3 D) 9 7 D

23、以下程序的输出结果是________。 main()

{ int i,x[3][3]={9,8,7,6,5,4,3,2,1}; for(i=0;i<3;i+=1) printf(\ }

A) 6 5 4 B) 9 6 3 C) 9 5 1 D) 9 8 7 A

24、以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,当输入负数时结束。划线处应分 别填入_________。 main()

{ float x[1000],sum=0.0,ave,a; int n=0,i; printf(\ while(a>=0.0 && n<1000) { sum+=______; x[n]=a; n++;

scanf(\ }

ave=________; printf(\ printf(\ for(i=0;i

if(x[i]

A) a和sum/n B) x[n]和sum/n C) a和sum/i D) a和sum/1000 A

25、下面程序的输出结果是________。

main()

{ int a[]={1,8,2,8,3,8,4,8,5,8}; printf(\ }

A) 6,6 B)8,8 C) 6,8 D)8,6 C

26、如有定义语句int a[]={1,8,2,8,3,8,4,8,5,8}; 则数组a的大小是________。 A) 10 B) 11 C) 8 D) 不定 A

27、以下程序的输出结果是_________。 main()

{ int i,x[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++) printf(\ printf(\ }

A) 1,5,9, B) 1,4,7, C) 3,5,7, D) 3,6,9, C

, 28、以下程序的输出结果是________。 main()

{ int i,x[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++) printf(\ printf(\ }

A) 1,5,9, B) 1,4,7, C) 3,5,7, D) 3,6,9, A

29、以下程序的输出结果是________。 main()

{ int a[3][3]={{1,2,3},{3,4,5},{5,6,7}},i,j,s=0; for(i=0;i<3;i++)

for(j=i;j<3;j++) s+=a[i][j]; printf(\}

A) 26 B) 36 C) 19 D) 22 D

30、下面程序的输出是________。 main()

{int a[10]={1,2,3,4,5,6,7,8,9,10};

}

A) n=n*8+s[j] B) n=n*8+s[j-1]-'0' C) n=n*8+s[j]-'\\0' D) n=n*8+s[j-1]-'\\0' B

38、有如下程序 main( )

{ char ch[2][5]={\ int i,j;long s=0; for(i=0;i<2;i++)

for(j=0;ch[i][j]>'\\0';j++) s=10*s+ch[i][j]-'0'; printf(\}

该程序的输出结果是________。 A) 69825 B) 693825 C) 6385 D) 69378254 D

39、有如下程序 main() { char ch[80];

int j;long s=0;

printf(\ for(j=0;ch[j]>'\\0';j++) s=10*s+ch[j]-'0'; printf(\}

如果运行时,从键盘上输入由数字组成的字符串, 该程序的功能是________。 A) 测字符数组ch的长度

B) 将数字字符串ch转换成十进制数 C) 将字符数组中的小写字母转换成大写 D) 将字符数组中的大写字母转换成小写 B

40、有如下程序 main()

{ char ch[80]=\ int j;long s=0; puts(ch);

for(j=0;ch[j]>'\\0';j++)

if(ch[j]>='a'&&ch[j]<='z') ch[j]=ch[j]-'b'+'B'; puts(ch); } 该程序的功能是________。 A) 测字符数组ch的长度

B) 将数字字符串ch转换成十进制数 C) 将字符数组ch中的小写字母转换成大写 D) 将字符数组ch中的大写字母转换成小写 C

41、有如下程序 main()

{ char ch[80]=\ int j;long s=0;

for(j=0;ch[j]>'\\0';j++) ; printf(\}

该程序的功能是________。 A) 测字符数组ch的长度

B) 将数字字符串ch转换成十进制数 C) 将字符数组ch中的小写字母转换成大写 D) 将字符数组ch中的大写字母转换成小写 A

42、以下程序的输出结果是________。 main()

{ char a[10]={'1','2','3',0,'5','6','7','8','9','\\0'}; printf(\}

A) 123 B) 1230 C) 123056789 D) 1230567890 A

43、以下程序的输出结果是________。 main()

{ int n[3][3],i,j; for(i=0;i<3;i++)

for(j=0;j<3;j++) n[i][j]=i+j; for(i=0;i<2;i++)

for( j=0;j<2;j++) n[i+1][j+1]+=n[i][j]; printf(\}

A) 14 B) 0 C) 6 D) 值不确定 C

44、以下程序的输出结果是________。 main()

{ char s[]={\ for(k=0;s[k];k++) { switch(s[k])

{ case '1':i=0;break;

case '2':i=1;break; case '3':i=2;break; case '4':i=3; } v[i]++; }

for(k=0;k<4;k++) printf(\}

A) 4 2 1 1 B) 0 0 0 8 C) 4 6 7 8 D) 8 8 8 8 A

45、以下程序输出的结果是________。 #include main( )

{ int a[ ]={1,2,3,4,5},i,j,s=0; j=1;

for(i=4;i>=0;i--) { s=s+a[i]*j; j=j*10; } printf(\}

A) s=12345 B) s=1 2 3 4 5 C) s=54321 D) s=5 4 3 2 1 A

46、以下程序输出的结果是________。

55、下面程序的功能是________。 main()

{ char s[ ]=\ int i,j=0; for(i=1;i<6;i++) if(s[j]>s[i]) j=i;

printf(\

A) 输出字符数组s中ASCII码最大的字符及位置 B) 输出字符数组s中ASCII码最小的字符及位置 C) 输出字符数组s中ASCII码最大的字符及字符串的长度 D) 输出字符数组s中ASCII码最小的字符及字符串的长度 B

#include main( )

{ int a[ ]={1,2,3,4,5},i,j,s=0; for(i=0;i<5;i++) s=s*10+a[i]; printf(\}

A) s=12345 B) s=1 2 3 4 5 C) s=54321 D) s=5 4 3 2 1 A

47、以下程序运行,如果从键盘上输入 4<回车>,则输出结果是________ 。 #include main( )

{int a[20]={1,2,3,4,5,-1,-2,-3,-4,-5,1,2,3,4,5,-1,-2,-3,-4,-5}; int i,m,n,f=0; scanf(\ for(i=0;i<20;i++)

if(a[i]==n) { f=1;m=i; } if(f!=0) printf(\ else printf(\}

A) 4,4 B) 4,14 C) 4,5 D) 4,15

B

48、下面的程序运行后,输出结果是________。 main( )

{ int i,j,a[7][7],x=0; for(i=0;i<3;i++)

for(j=0;j<3;j++) a[i][j]=3*j+i; for(i=2;i<7;i++) x+=a[i][i]; printf(\}

A) 8 B) 不确定值 C) 20 D) 0 B

49、下面程序运行后,输出结果是________。 #include main( )

{ int a[10]={1,2,3,4,5,6},i,j; for(i=0;i++<3;)

{ j=a[i];a[i]=a[5-i];a[5-i]=j;} for(i=0;i<6;i++) printf(\}

A) 6 5 4 3 2 1 B) 1 2 3 4 5 6 C) 1 5 4 3 2 6 D) 1 5 3 4 2 6

D

50、下面程序的功能是________。 #include main( )

{ int a[5][4],i,j,max,row,col;

for(i=0;i<5;i++) for(j=0;j<4;j++) scanf(\ max=a[4][0]; row=4;col=0; for(i=4;i>=0;i--) for(j=0;j<4;j++)

if(max

51、以下程序的输出结果是________。 main()

{ char p1[]=\ strcat(str,p1); strcat(str,p2); printf(\}

A) ABCDEFGefghabcd B) ABCDEFGefgh C) abcdefgh D) ABCDEFGabcdefgh D

52、以下程序的输出结果是________。 #include #include main()

{ char str[12]={'s','t','r','i','n','g'}; printf(\ }

A) 6 B) 7 C) 11 D) 12 A

53、设有如下定义语句:

static char str[]=\则执行:

printf(\

后的输出结果为________。 A) 5 B) 7 C) 12 D) 14 A

54、以下程序输出的结果是_________ 。 #include main( )

{ char str[ ]=\ for(i=0;str[i]!='\\0';i++)

if(str[i]<'0' || str[i]>'9') printf(\ printf(\

A) 123456789 B) 1a2b3c C) abc D) 123 C

55、若有定义语句:char s[100],d[100]; int j=0,i=0; ,且s中已赋字 符串,请在划线处填______以实现将字符串s中的内容拷贝到字符串d 中。(注意:不得使用逗号表达式) while(s[i]) { d[j]=__________; j++; } d[j]=0;

A) s[i] B) s[++i] C) s[i++] D) s[j] C

55、下面程序的功能是________。 main()

{ char s[ ]=\ int i,j=0; for(i=1;i<6;i++) if(s[j]>s[i]) j=i;

printf(\

A) 输出字符数组s中ASCII码最大的字符及位置 B) 输出字符数组s中ASCII码最小的字符及位置 C) 输出字符数组s中ASCII码最大的字符及字符串的长度 D) 输出字符数组s中ASCII码最小的字符及字符串的长度 B

本文来源:https://www.bwwdw.com/article/trkh.html

Top