c語言.12題.寫程序.後面思考題,
題目:
c語言.12題.寫程序.後面思考題,
1 編程
1.1 列印出以下圖案
*
* * *
* * * * *
* * * * * * *
* * * * *
* * *
*
1.2編寫程序實現輸入整數n,輸出如下所示由數字組成的菱形.(圖中n=5)
1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
1 2 3 4 5 4 3 2 1
1 2 3 4 3 2 1
1 2 3 2 1
1 2 1
1
2 思考題
1.以下不是死循環的語句是 .
A)for (y=1,x=9;x>++y ; x=i++) i=x ;
B)for ( ; ; x++=i ) ;
C)while (1) { x++ ; }
D)for (i=10 ; ; i--) sum+=i ;
2.下面程序段的運行結果是 .
x=y=0;
while (x
解答:
1 編程
1.1 列印出以下圖案
*
* * *
* * * * *
* * * * * * *
* * * * *
* * *
*#include<stdio.h>
int main()
{
int i = 0,j;
for(;i<3;i++){
j=0;
for(;j<i*2+1;j++) printf("*");
printf("\n");
}
for(;i>=0;i--){
j=0;
for(;j<i*2+1;j++) printf("*");
printf("\n");
}
return 0
}1.2編寫程序實現輸入整數n,輸出如下所示由數字組成的菱形.(圖中n=5)
1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
1 2 3 4 5 4 3 2 1
1 2 3 4 3 2 1
1 2 3 2 1
1 2 1
1
#include<stdio.h>
int main()
{
int i = 0,j,n,k;
scanf("%d",&n);//輸入
for(;i<n-1;i++){
j=0;k=1;
for(;j<=n+i;j++){
if(j<n-i)
printf(" ");
else if (j<n)
{
printf("%d",k++);
}
else{
printf("%d",k--);
}
}
printf("\n");
}
for(;i>=0;i--){
j=0;k=1;
for(;j<=n+i;j++){
if(j<n-i)
printf(" ");
else if (j<n)
{
printf("%d",k++);
}
else{
printf("%d",k--);
}
}
printf("\n");
}
return 0;
}2 思考題
1.以下不是死循環的語句是 .
A)for (y=1,x=9;x>++y ; x=i++) i=x ;
B)for ( ; ; x++=i ) ;
C)while (1) { x++ ; }
D)for (i=10 ; ; i--) sum+=i ;A,思路:排除法;
2. 下面程序段的運行結果是 .
x=y=0;
while (x<15) y++,x+=++y ;
printf(「%d,%d」,y,x);
A)20,7 B)6,12 C)20,8 D)8,20D;運行一下就知道了
3. 以下for循環的執行次數是 .
for (x=0,y=0; (y=123) && (x<4) ; x++) ;
A)無限循環 B)循環次數不定 C)4次 D)3次C;
4.寫出下面程序運行的結果.
main ( )
{ int i,b,k=0 ;
for (i=1; i<=5 ; i++) {
b=i%2;
while (b--==0) k++ ;
}
printf(「%d,%d」,k,b);
}答:2,0;
5. 寫出下面程序運行的結果.
main ( )
{ int a,b;
for (a=1,b=1 ; a<=100 ; a++) {
if (b>=20) break;
if (b%3==1) { b+=3 ; continue ; }
b-=5;
}
printf(「%d\n」,a);
}答:8
6. 寫出下面程序運行的結果.
main ( )
{ int k=1,n=263 ;
do { k*= n%10 ; n/=10 ; } while (n) ;
printf(「%d\n」,k);
}答:36
添加新評論