文档库 最新最全的文档下载
当前位置:文档库 › 第五章补充习题

第五章补充习题

第五章补充习题
第五章补充习题

第五章补充习题

1. 设有说明static int n1=10;const int n2=10; int n4=10;

#define n3 10

则关于下列语句叙述正确的是。

①int data1[n1];②int data2[n2];③int data3[n3];④int data4[n4];

A. 全部正确

B. ①②③均正确

C. ②③均正确

D. 均不正确

2. 设有定义:int x[10]={0};int y[]={1,2,3};则下列叙述正确的是。

A. 数组x的首元素为零,其他元素为随机数。组y的大小不确定;

B. 数组x的所有元素均为零。数组y的大小为3;

C. 数组x的所有元素均为零,数组y的大小不确定;

D. 数组x的首元素为零,其他元素为随机数。数组y的大小为3。

3. 设有定义int a[]={1,2,3,4,5,6,7,8,9,10};则下列表达式中,数值为4的表达式的个

数为。

①a[4] ②a[10]-6 ③a[3]+1 ④a[a[9]-a[6]]

A. 1

B. 2

C. 3

D.4

4. 若有数组声明int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; 则可以正确表示a中元素的表达式是。

A. a[3,4]

B. a[0][3]

C. a[3][4]

D. a[3][3]

5. 以下关于C++语言中数组的描述正确的是。

A. 数组的大小是固定的,但可以有不同类型的数组元素

B. 数组的大小是可变的,但所有数组元素的类型必须相同

C. 数组的大小是固定的,所有数组元素的类型必须相同

D. 数组的大小是可变的,可以有不同类型的数组元素

6. 有语句“int a[5]={1,2,3};”,则a[2]的值,a[3]的值。

7. 以下程序运行后的输出结果是:

#include

int f(int n){ return n %2;}

void main()

{ int data[8]={1,3,5,2,4,6},s=0;

for(int i=0;f(data[i]);i++)s+=data[i];

cout<

}

8. 程序运行后的输出结果是:

#include

void f(int x[],int i,int j)

{ int t;

if(i

t=x[i];x[i]=x[j];x[j]=t;

i++;j--;

f(x,i,j);

}

}

void main()

{ int data[]={2,0,3,8};

f(data,0,3);

for(int i=0;i<4;i++)cout<

cout<

}

9. 程序运行后的输出结果是:

#include

void main()

{ int data[]={5,4,3,2,1,0};

for(int i=0;i<2;i++)

for(int j=0;j<5-i;j++)

if(data[j]>data[j+1]){

int t=data[j];

data[j]=data[j+1];

data[j+1]=t;

}

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

cout<

cout<

}

10. 写出以下程序执行时的输出结果。

#include

int fun(int i,int a[ ])

{

int j = 0;

while(i!=0)

{

a[j] = i % 10;

i = i/10;

j++;

}

return j;

}

void main()

{

int f[6],i=2018,j;

j=fun(i,f);

cout<<"a[0]="<

for(i=j;i>1;i--)

cout<<"a["<

11. 写出以下程序执行时的输出结果。

#include

void main(void)

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

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

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

if (i==1)

a[i][j]=a[i-1][a[i-1][j]]+2;

else

a[i][j]=j;

cout<

}

cout<<'\n';

}

}

12. 下列程序的功能是判别从键盘输入的一个不超过5位的整数是不是回文数,请完善程序。#include

int Is_Palindrome(int data[],int n)

{ int right=n-1;

int left=0;

while(left<=right){

if( )return 0;

else{

left++;

right--;

}

}

return 1;

}

void main(void)

{ const int N=5;

int data[N];

int num=0;int x;

cout<<"请输入待判别的数(不超过5位整数):"<

cin>>x;

int z=x;

while(z!=0){

data[num]=z % 10;

;

num++;

}

int flag=Is_Palindrome( );

cout<<"输入的数据是:"<

if(flag)

cout<<"该数是回文数!"<

else

cout<<"该数不是回文数!"<

相关文档