C语言程序复习题及参考答案 下载本文

if (n==pow(i,3)+pow(j,3)+pow(k,3)) printf(\ } }

2.以下程序是求1+1/2+1/4+1/6……+1/100的值。请补充完整。 #include main( ) { int i=2; float sum=1; while ( ) { sum=sum+1.0/i; ; }

printf(“sum=%f”, sum); }

3. 下列程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。 #include void main( ) {

int n=0, ch; ch=getchar( );

while( ______________ )

{ if ( _______________ ) n++; c=getchar( ); } }

4. 统计所有四位正整数中各个数位上数字之和是9的数的个数。 如:1008、1017是满足条件的数 #include void main() {

int i,j,s, count;

;

for(i=1000;i<=9999;i++) { j=i; s=0;

while( ) {

第 31 页 共 88 页

; j=j/10; }

if(s==9) count++; }

printf(\}

5. 下列程序用来计算n!的值,请填空。

main( )

{int i,s,n; s=1;

printf(\ scanf(\for(i=1;i<=n;i++) printf(\}

6.下面程序的功能是计算并输出“(1)*(1+2)*(1+2+3)*……*(1+2+3+……+10)”,请完善程序:(本题4分) main()

{ float x,y=1; int i,j;

for(i=1;i<11;i++)

{ _;

for(j=1;j<=i;j++) _ __; y=y*x;

}

printf(\}

7.下面程序的功能是计算1-3+5-7+…-99+101的值存在s中,请填空。

#include main() {

int i,t=1,s=0;

for(i=1;i<=101;_______) { s=s+i*t; t=_______;

第 32 页 共 88 页

} }

8、程序的功能是计算:s=1-2+3-4+5-?+99-100,请填空。 main()

{ int s=0,i,falg=1; for( i=1; i<=100; i++ ) { s+= ; ;}

printf(\

9、程序的功能是计算:s=2+22+222+2222+22222,请填空。 main()

{ int s=0,i,a=0; for( i=1; i<=5; i++)

{ a= ; s= ; }

printf(\

10、程序的功能是计算:s=1+12+123+1234+12345,请填空。 main()

{int s=0,i,a=0;

for( i=1; i<=5; i++) { a= ; s= ; }

11、编写程序,把100到200之间的能被3整除的数输出。

main() { int i;

for(i=100;i<201;i++) {if ( )

continue; __ _____; } }

五、程序设计题:

1、编程实现:输入两个正整数m和n,求其最大公约数和最小公倍数。

2、求1+2+4+6+??+100之和。分别用三种循环语句实现(while,do-while,for)。 3、编写程序求2到100间的全部素数,要求每行输出5个数。 4、编程输出九九乘法表。

5、编程求Fibonacci数列前20个数。这个数列有如下特点:第1、2两个数为1、1。 从第3个数开始,该数是其前面两个数之和。

第 33 页 共 88 页

6、一个球从100m高度自由落下,每次落地后反跳回原高度的一半,再落下,再反弹。求它在第10次落地时,共经过了多少米?第10次反弹多高?

7、 编写程序,把100到200之间的能被3整除的数输出。

8、试编写程序输出100~300间的所能能同时被3和5整除的数。 9、 请编写程序解决如下数学计算问题:

一个整数被5除余3,被7除余5,被9除余7,这个数最小是几? 10、设计程序求自然数1~100(包含1和100)中所有素数的和。 11、编写程序,使用下面的公式求出e的近似值。 e≈1+

11111???????? (精确要求?10?6)

n!1!2!3!n!

12、求出所有的“水仙花数”并输出。提示:所谓水仙花数,是指一个3位数,其各位数字

333 。

立方和等于该数字本身,例如153是一个水仙花数,因为153=1+5+3。

三、参考答案

一、选择题:

1~5:BBCAC 6~10:DBDCA 11~15:ACACB 二、填空题:

1. continue break

2. 36 3. break 4.3 5. do…while

三、看程序写结果:

1. ***** *** ** *

2. s=0

3. value=2004

4. 0,9 1,8 2,7 3,6 4,5 5. * *** ***** ******* ********* ***********

************* *************** ***************** ******************* 6. value=2518

第 34 页 共 88 页