C语言程序设计习题集 下载本文

内容发布更新时间 : 2024/11/13 6:50:14星期一 下面是文章的全部内容请认真阅读。

scanf(\,&s); }

}

运行时,若输入123450<回车>,则输出结果是 A)6566456 B)66656 C)66666 D)6666656

11.有以下程序段

int i,n;

for(i=0;i<8;i++) { n=rand()%5; switch(n) { case 1:

case 3:printf(\,n);break; case 2:

case 4:printf(\,n);continue; case 0: exit(0); }

printf(\,n); }

以下关于程序段执行情况的叙述,正确的是 A)for循环语句固定执行8次

B)当产生的随机数n为4时结束循环操作 C)当产生的随机数n为1和2时不做任何操作 D)当产生的随机数n为0时结束程序运行

二.填空题 1.有以下程序

#include main()

{ int m,n;

scanf(\ while(m!=n)

{ while(m>n)m=m-n; while(m

printf(\}

程序运行后,当输入14<空格>7<回车>时,输出结果是_____。

2.以下程序运行后的输出结果是____。

#include main()

{ int a=1,b=7; do{

13

b=b/2; a+=b; } while(b>1);

printf(\,a);}

3.有以下程序:

#include main()

{ int f,fl,f2,i; f1=0;f2=1;

printf(\ %d \,f1,f2); for (i=3;i<=5;i++)

{ f=f1+f2;printf(\,f); f1=f2;f2=f; }

printf(\; }

程序运行后的输出结果是____。

4.若有定义:int k;,以下程序段的输出结果是____。

for(k=2;k<6;k++,k++) printf(\,k);

5.以下程序运行后的输出结果是____。

#include main()

{ int k=1,s=0; do{

if((k%2)!=0)continue; s+=k; k++; }while(k>10);

printf(\=%d\\n\,s); }

第06章 数组

一.选择题

1.下列选项中,能正确定义数组的语句是

A)int num[0..2008]; B)int num[];

C)int N=2008; D)#define N 2008 int num[N]; int num[N];

2.下列定义数组的语句中,正确的是。

A)int N=10; B)#define N 10 C)int x[0..10]; D)int x[]; int x[N]; int x[N];

14

3.若要定义一个具有5个元素的整型数组,以下错误的定义语句是 A)int a[5]={0}; B)int b[]={0,0,0,0,0}; C)int c[2+3]; D)int i=5,d[i];

4.以下错误的定义语句是。

A)int x[][3]={{0},{1},{1,2,3}};

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

5.若有定义:int a[2][3];,以下选项中对a数组元素正确引用的是。 A)a[2][!1] B)a[2][3] C)a[0][3] D)a[1>2][!1]

6.有以下程序:

#include #include main()

{ char a[10]=\;

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

程序运行后的输出结果是________。 A)7,4 B)4,10 C)8,8 D)10,10

二.填空题

1.以下程序运行后的输出结果是 。

#include main()

{ int i,n[5]={0}; for(i=1;i<=4;i++)

{ n[i]=n[i-1]*2+1;printf(\,n[i]);} printf(\; }

2.有以下程序

#include main()

{ int i,n[]={0,0,0,0,0}; for(i=l;i<=4;i++)

{n[i]=n[i-1]*3+1;printf(\,n[i]);} }

15

程序运行后的输出结果是 。

3.有以下程序

#include main()

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

for(i=0;i<3;i++) b[i]=a[i][2]+a[2][i]; for(i=0;i<3;i++) printf(\ printf(\}

程序运行后的输出结果是____。

4.有以下程序

#include main()

{ int n[2],i,j;

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

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

结果为:__________

5.以下fun函数的功能是在N行M列的整型二维数组中,选出一个最大值作为函数值返回,请填空。(设M,N已定义)

int fun(int a[N][M])

{ int i,j,row=0,col=0; for(i=0; i

if(a[i][j]>a[row][co1]){row=i;col=j;} return( ____ ); }

6.有以下程序

#include main()

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

for(j=i;j<3;j++)printf(\ printf(\}

程序运行后的输出结果是____。

16