搜档网
当前位置:搜档网 › 若有以下说明语句

若有以下说明语句

若有以下说明语句
若有以下说明语句

一、选择题

1、若有以下说明语句:

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

char c=?a?,d,g;

则数值为4的表达式是_________。

A、a[g-c]

B、a[4]

C、a[…d?-…c?]

D、a[…d?-c]

2、假设int型变量占两个字节的存储单元,若有定义:

int x[10]={0,2,4};

则数组x在内存中所占字节数为________。

A、3

B、6

C、10

D、20

3、下列合法的数组定义是________。

A、int a[]=”string”;

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

C、char a=”string”;

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

4、若给出以下定义:

char x[]=”abcdefg”;

char y[]={…a?,?b?,?c?,?d?,?e?,?f?,?g?};

则正确的叙述为________。

A、数组x和数组y等价

B、数组x和数组y的长度相同

C、数组x的长度大于数组y的长度

D、数组y的长度大于数组x的长度

5、下列程序运行后的输出结果是________。

Main()

{int n[3],t,j,k;

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

n[t]=0;

k=2;

for(t=0;t

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

n[j]=n[t]+1;

printf(“%d\n”,n[1]);}

A、2

B、1

C、0

D、3

6、有以下程序

main()

{ int p[7]={11,13,14,15,16,17,18}, i=0,k=0;

while(i<7 && p[i]%2) { k =k+ p[i]; i++; }

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

}

执行后输出结果是________。

A、58

B、56

C、45

D、24

7、以下能正确定义一维数组的选项是________。

A、int num[]; B)#define N 100

int num[N];

C、int num[0..100]; D)int N=100;

int num[N];

8、有以下程序

main( )

{ char a[]="abcdefg",b[10]="abcdefg";

printf("%d %d\n",sizeof(a),sizeof(b));

}

执行后输出结果是________。

A、7 7

B、8 8

C、8 10

D、10 10

9、若有以下定义语句:

char s[10],s=”abcd”;printf(“%s\n”,s);

则运行结果是_________。

A、输出abcd

B、输出a

C、输出ab cd

D、编译不通过

10、不能把字符串“Hello!”赋给数组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!”;

二、填空题

1、观察一下程序,在指定行加上注释,并说出程序的执行结果。

main()

{ int i,a[10]; _________

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

{ a[i]=3*i+1; _________

printf(“%5d”,a[i]);

}

printf(“\n”);

for(i=9;i>=0;i--,i--)

{ if(a[i]%2==0) printf(“%5d”,a[i]); _________

}

}

程序结果:________

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

main()

{ char s[]="abcdef";

s[3]=‘\0';

printf("%s\n",s);

}

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

main()

{ int i, a[10];

for(i=9;i>=0;i--) a[i]=10-i;

printf("%d,%d,%d",a[2],a[5],a[8]);

}

4、下列程序段的输出结果是________。

main()

{ char b[]=”Hello,you”;

b[5]=?\0?;

printf(“%s\n”,b);

}

5、若想通过以下输入语句使a中存放字符串“1234”,b中存放字符“5”,则输入数据的形

式应该是_______。

char a[10],b;

scanf(“a=%s,b=%c”,&a,&b);

三、编写程序

1、写一个函数,将一个整型数x插入到由小到大排列的整型数组a[0]~a[N-1]中,使得插入

元素后的数组a[0]~a[N]保持升序。

2、将两个字符串连接起来(不用strcat)。

3、随机产生N个(N由用户定义)0~9之内的整数,分别统计数字0和9出现的次数。

4、键盘输入某串,求字符ASC码之和。

相关主题