C语言程序设计综合练习题 下载本文

}

3.main()

{ int p=30;

printf(\}

4.main()

{ int x,y=0;

printf(“%c\\n”, x=99) ;

printf(“%d\\n”, (x++ , ++y , x+y)) ;

}

第5章 选择结构程序设计 一、读程序,写出程序执行结果

1.void main() { int x= - 9, y ;

if(x>0) y=10 ; else if(x= =0) y=0; else if(x<-5) y= -3; else y= -2; printf(“%d\\n”,y);

}

2.void main() { int a, b, c,x ; a=b=c=1; x=3 ; if ( !a) x-- ; else if (b) if (c) x=3; else x=4;

printf(“%d\\n”, x); } 3.void main()

{ int a=12, b=5, c=-3 ;

if(a>b) if(b<0) c=0; else c++;

printf(“%d\\n”,c); }

4. main()

{ int x=100,a=20,b=10; int v1=5; if(a

第6页(共23页)

if(!v1) x=1; else x=10; x=-1;

printf(“%d”,x); } 5.main()

{ int a=4,b=3,c=5,t=0; if (a

printf(\ }

6. main()

{ int i=2; switch(i)

{ case 1: printf(“%d”,i++); break;

case 2: printf(“%d”,i++); case 3: printf(“%d”,i++); break;

case 4: printf(“%d”,i++); } }

7. void main() { int s=?3?;

switch(s-'2') { case 0 ;

case 1 : putchar(s+4);

case 2 : putchar(s+4); break; case 3 : putchar(s+3); default : putchar(s+2); }

}

8.void main()

{ int x=2;

switch(1+x) { case 0 ;

case 1 : printf(“apple”); break ; case 2 : printf(“hello”); break; case 3 : printf(“world”);

default : printf(“thank you”); }

}

第7页(共23页)

第6章 循环控制 一、选择题

1.对于循环 for (k=16; k>0; k-=3) putchar(?*?); 输出是

A)***** B)****** C)******* D)无限循环

2.若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)

s=a; for(b=1;b<=c;b++) s=s+1;

则与上述程序段功能等价的赋值语句是

A)s=a+b; B)s=a+c; C)s=s+c; D)s=b+c;

3.设有int i ,x ; 则循环语句: for(i=0,x=0;i<=9&&x!=876;i++) scanf(“%d”,&x);

A)最多执行10次 B)最多执行9次 C)是无限循环 D)循环体一次也不执行

二、读程序,写出程序执行结果

1. main()

{ int n=4 ;

while(n- -) printf(\

2.main() { int i;

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

{ case 1: printf(\ case 2: printf(\ default : printf(\

} } 3.main()

{ int i,m=0,n=0,k=0; for(i=9; i<=11;i++) switch(i/10)

{ case 0: m++; n++; break; case 10: n++; break; default: k++; n++; }

printf(\}

4.main()

{ int i,j;

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

{ for(j=0;j<11-2*i;j++)putchar(? ?); for(j=0;j<2*i-1;j++) putchar('9');

第8页(共23页)

}

}

5. main()

{ int a;

for(a=1;a<6;a++) { if(a%2)

printf(“%”); else

continue; printf(“@”); } }

6.void main() { int x=2,y=3; int j;

for(j=1 ; y>0 ; y - - ) j=j*x; printf(“j=%d\\n”,j); } 7.void main() { int n= -5 ; while(++n)

printf(\

} 8. main()

{ int x=15;

while(x>10 && x<50) { x++;

if(x/3){x++;break;} else continue; } printf(“%d\\n”,x); }

9.void main()

{ int x,y;

for(x=1,y=1; y<=50; y++) { if(x>=10) break;

if(x%2==1) {x+=5; continue ;} x-=3; }

printf(\ %d\\n\ } 10.main()

{ int k=4,n=0; for( ; n

if(n%3!=0) continue;

第9页(共23页)

k--; }

printf(\

}

11.void main()

{ int i=1;

while (i<10)

if(++i%5!=3) continue ; else printf(\}

12. main()

{ int k=0,m=0; int i,j;

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

{ for(j=0;j<3;j++) k++; k-=j; } m=i+j;

printf(“k=%d, m=%d”,k,m); }

13.void main() { int t, n=15;

t=0; do { t+=n;

n-=2; } while (n>0); printf(“%d\\n”, t); }

14.void main()

{ int n1,n2; n2=5678; while(n2!=0) { n1=n2;

n2=n2/10; printf(\ } }

第7章 数组 一、选择题

1.在执行int a[ ][3]={{1,2},{3,4}}; 语句后a[1][2]的值是

第10页(共23页)