6数组习题及答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、选择题

1.若有如下定义语句:

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

则对数组正确的引用是( d)。

A.a[10] B.a[a[3]5] C.a[a[9]] D.a[a[4]+4]

2.若有如下定义语句:

double a[5];

int i=0;

能正确给a数组元素输入数据的语句是( d)。

A.scanf("%lf%lf%lf%lf",a);

B.for(i=0;i<=5;i++) scanf("%lf",a+i);

C.while(i<5) scanf("%lf",&a[i++]);

D.while(i<5) scanf("%lf", a+i);

3.以下定义语句正确的是( b)。

A.int n=5,a[n][n]; B.int a[ ][3]={{1,2},{3,4},{5,6}}; C.int a[ ][3]; D.int a[ ][ ]={ {1,2},{3,4},{5,6}} 4.以下程序的输出结果是(a )。

#include

#include

main()

{char ss[16]="tese\0\n";

printf("%d,%d\n",strlen(ss),sizeof(ss));}

A.4,16 B.7,7 C.16,16 D.4,7

5.有以下的定义初始化语句( c)。

char num[ ]="9876543210";

数组num所占的存储空间的字节数是()。

A.9 B.10 C.11 D.以上三项都不对

二、填空题

1、以下程序的功能是:从键盘上输入一行字符,存入一个字符数组中,构成一个字符串,并将该字符串复制到字符数组sptr 中,然后输出字符数组sptr的内容。请填空。

# include

# include

#include

main()

{

char str[80],sptr[80];

int i,j;

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

{

str[i] =getchar();

if(str[i]=='\n')

break;

}

str[i]= ______(1)________;

for(j=0;j<______ (2)________ ;j++)

{

sptr[j]=str[j];

putchar(sptr[j]);

}

}

答:(1)‘\0’(2)strlen(str)

2、下面程序以每行4个数据的形式输出a数组

#include

#define N 20

main()

{int a[N],I;

for{I=0;I

{ printf(‚%3d‛,a[I]);

if(_____(2)_______) printf(‚\n‛);

}

}

答:(1)&a[I](2)(I+1)%4==0

3、下面程序的功能是统计年龄在16~31岁之间的学生

人数。请填空:

#include

main()

{int a[30],n,age,I,j=0;

for(I=0;I<30;I++) a[I]=0;

printf("Enter the number of the students(<30)\n"); scanf("%d",&n);

printf("Enter the age of each student:|\n");

for(I=0;I

{scanf("%d",________(1)_______);

a[I]=age;}

printf("the result is\n");

for(_________(2)_________;I++)

{if (a[I]>=16 &&a[I]<=31) j++;

}

printf("%d\n",j);

}

答:(1) &age(2)I=0;I

三、运行结果

1.当运行以下程序时,从键盘输入 AabD,则下面程序的运行结果是:__________________AzySD_____________________

#include

main()

{char s[80];

int I=0;

gets(s);

while(s[I]!='\0')

{if(s[I]<='z'&&s[I]>='a')

s[I]='z'+'a'-s[I];

I++;}

puts(s);}

2.下面程序的运行结果是( 1)

#include

main()

{char ch[7]={‚12ab56‛}; int I,s=0;

for(I=0;ch[I]>=’0’&&ch[I]<=’9’;I+=2) s=10*s+ch[I]-‘0’;

printf(‚%d\n‛,s);}

3.下面程序的运行结果是(LBLMNP)

#include

#include

main()

{char a[80]="AB",b[80]="LMNP";

int I=0;

相关文档
最新文档