admin 管理员组

文章数量: 1087136


2024年4月21日发(作者:argument的定义)

C语言考试试题

[一维数组]

姓名: 学号: 成绩:

一、 填空题:(每题1分,共10分)

1、数组是 构成的集合。

2、数组元素被顺序连续地存放在内存中,并通过 进行访问。

3、数组元素的下标从 开始。长度为n的数组中,最后一个元素下标

为 。

4、一维数组是最简单的数组,其定义形式是: 。

5、一个C字符串是以 结束的字符序列。

6、专门用于字符串的输入和输出的函数是 。

7、float fv[]={0,4,5,12,-7,56.8,0};数组fv的长度是_________。

8、存储字符串“0”占用________字节的存储单元。

9.有定义int a[]={4,6,78,3456,98,2,89};该数组元素最大的下

标为___________。

二、 单项选择题,请将答案写在下列答题卡中(每题2分,共24分 )。

1、以下正确的概念是( )

A、 数组名的规定与变量名不相同。

B、 数组名后面的常量表达式用一对圆括号括起来。

C、 数组下标的数据类型为整型常量或整型表达式。

D、 在C语言中,一个数组的数组下标从1开始。

2、对数组初始化正确的方法是:

A、int a(5)={1,2,3,4,5};

B、int a[5]={1,2,3,4,5};

C、int a[5]={1…5};

D、int a[5]={0,1,2,3,4,5};

3、若有以下的数组定义:

char x[]=”12345”; char y[]={‘1’,’2’,’3’,’4’,’5’};

则正确的描述是:( )

A、x数组和y数组长度相同 B、x数组长度大于y数组长度

C、x数组长度小于y数组长度 D、两个数组中存放相同的内容

4、以下程序运行时,从键盘输入:AhaMA Aha<回车>,则下面程序的

运行结果是( )

#include

main()

{char s[80],c=’a’;

int m=0; scanf(“%s”,s);

while(s[m]!=’0’)

{ if(s[m]==c) s[m]=s[m]-32;

else if(s[m]==c-32) s[m]=s[m]+32;

m++;}

puts(s);}

A、ahAMa B、AhAMa C、AhAMa ahA D、ahAMa ahA

5、给出以下定义:char x[]=”abcdefg”; char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’};则

正确的叙述为:( )

A 数组A和数组属于空数组 B 数组X和数组Y的长度相同

C 数组X的长度大于数组Y的长度 D数组X的长度小于数组Y的长度

6、下面程序的运行结果是( )

main()

{char a[]=”morning”,t;int m,n=0;

for(m=1;m<7;m++)

if(a[n]

t=a[n];a[n]=a[7];a[7]=a[n];puts(a);}

共5页,第1页

A、mogninr B、mo C、morning D、mornin

7、字符数组C在内存中所占字节数是:( )

char c[]={“language”};

A、 9 B、10 C、11 D、12

8、下列程序的输出结果是( )

main()

{int n[2],m,k;

for(m=0;m<2;m++) n[m]=m;k=2;

for(m=0;m<3;m++) printf(“%dn”,n[k]);}

A、不确定的值 B、3 C、2 D、1

9、在C语言中引用数组元素时,其数组下标的数据类型允许是( )

A.整型常量 B.整型表达式

C.整型常量或整型表达式 D.任何类型表达式

10.定义一个具有8个元素的整型数组,应使用的语句是( )

A.int a[8]; a[2,4]; C. int a[]; *a[8];

11.字符串“wx53np103q”长度是( )

A.7 B.9 C.15 D.16

12.已知int cn=20;下列关于数组的定义正确的是()

A.int a[cn]; cmt[35.0];

nm[8]=”2014高考”; x[31];

三、程序分析题,写出下面各程序的输出结果。(每小题5分,共20分)

①、#include “stdio.h”

main()

{int x,sum=3;

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

for(x=1;x<7;x*=2)

sum=sum+a[x];

printf(“sum=%dn”,sum);

}

程序运行结果:

②、 #include “stdio.h”

main()

{ int a[8]={1,4,3,56,77,44,66,88};

int x=0,y=0,i;

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

{ if(a[i]%2==0)

x=x+1

else y=y+1; }

printf(“X=%d,Y=%dn”,x,y);

}程序运行结果:

③、#include

main( )

{int m,f[10];

f[0]=f[1]=1;

for(m=2;m<10;m++)

f[m]=f[m-2]+f[m-1];

for(m=0;m<10;m++)

{ printf(“%3d”,f[m]);}

}程序运行结果:

④、main( )

{int a=2,b=3,c=4;

++a;c+=++b;

c=b*3;a+=c; printf(“A:%d,%d,%dn”,a,b,c);

a+=c; printf(“B:%d,%d,%dn”,a,b,c);}

printf(“C:%d,%d,%dn”,a,b,c);}

}程序运行结果:

共5页,第2页


本文标签: 数组 长度 结果 程序 下列