C程序设计考试复习题(4)

2019-08-30 19:57

⑼请读程序:

#include “math.h” #include “stdio.h” main() {float x,y,z;

scanf(“%f,%f”,&x,&y): z=x/y; while(1)

{if(fabs(z)>1.0) {x=y; y=z; z=x/y;} else break;} printf(“%f\\n”,x);}

若运行时从键盘上输入3.6,2.4<回车>,则输出结果为 。 ⑽ 以下程序运行的结果是: 。

main() { int x,y,z; x=3; y=z=4;

printf(“%d,”,(x>=y>=z?1:0)); printf(“%d\\n”,x>=y &&y>=x); }

⑾ 以下程序运行的结果是: 。

main()

{ char ch[7]={“65ab21”}; int i,s=0;

for(I=0;ch[I]>=‘0’ && ch[I]<=‘9’;i++) s=10*s+ch[i]-‘0’; printf(“%d\\n”,s); }

⑿写出下列程序运行结果。 #include main()

{ int a[5]={1,2,3,4,5},i,t; for (i=0;i<2;i++) { t=a[i]; a[i]=a[4-i];

a[4-i]=t; }

for (i=0;i<5;i++) printf(\ } 结果:

⒀执行下列程序时,如果输入asbr,写出运行结果。

16

#include void fun(t) char t[]; {char c;int i,j; for(i=strlen(t)-1;i;i--) for(j=0;j

{ c=t[j]; t[j]=t[j+1]; t[j+1]=c; } } main() { char s[81];

printf(\

gets(s); fun(s); printf(\ } 结果:

⒁写出下列程序的运行结果。 #include main()

{ int a[]={1,-2,3,-4,5},*ip=a;

a[1]=*ip++; printf(\⒂写出下面C语言程序的输出结果。 main() { float a,b,s;

a=2.0; b=4.0; s=a*b; printf(“a=%f,b=%f,s=%f\\n”,a,b,s); } ⒃写出下面C语言程序的输出结果。 Main() { int I,j; for (I=0; I<4; I++)

{ for (j=0; j<2*I+1; j++) printf(“*”);

printf(“\\n”); } }

⒄写出下面C语言程序的输出结果。 main()

{ int a[]={17,63,42,71,68,43},i,k,max; max=a[0]; k=0; for (i=1;i<6;i++)

{ if (max

k=i; } }

printf(“max=%d,k=%d\\n”,max,k); } ⒅写出下面C语言程序的输出结果。 int power(x,n) int x,n; { int i,p=1;

for(i=1;i<=n;i++) { p=p*x; printf(“%d\\n”,p); } return(p); } main()

{ int a=2,b=3;

} 17

printf(“a=%d,b=%d,power=%d\\n”,a,b,power(a,b)); }

五、完成程序。

⒈ 下面程序判断m是否为素数。请在下划线上添上适当内容,完成此程序。 # include “math.h” main( ) { int m,i,k;

scanf(“%d”,m) k=sqrt(m); for(i=2;i<=k;i++)

if( m%i= =0 ) break;

if( i>=k+1 )

printf(“%d is a prime number\\n”,m);

else

printf(“%d is not a prime number\\n”,m); }

⒊ 已知有10元。5元和1元钞票77张共308元,问10元、5元和1元的钞票可能各有几张? 请在下划线上添上适当内容,完成此程序。 main( ) { int i,j,k,m,; for(i=1;i<30;i++) for(j=1;j<=61-i;j++) for(k=1;k<=77-i-j;k++)

{ m= i+j+k;n=i*10+j*s+k ; if( m= =7&&n= =308 )

printf(“i=%d j=%d k=%d\\n”,i,j,k); } } ⒋求Fibonacci数列的前20项,这个数列的特点为:F1=1,F2=1,FN=Fn-1+Fn-2(n>=3)。请在 下划线上添上适当内容,完成此程序。 main( )

{ long int f1=1,f2=1;int n=3; while( n<10 )

{ f1=f1+f2; f2= f1+f2 ; n++:f2); }

18

(“%d,ld\\n”,n, printf}

⒍ 以下程序解决百元买百鸡的问题。要求用100元买100只鸡,其中公鸡5元一只,母鸡3 元一只,小鸡1元三只,每种至少买一只。请在下划线上添上适当内容,完成此程序。 main( )

{ int i,j,k,m,n; for(i=1;i<20;i++) for(j=1;j<=33-i;j++)

for(k=1;k<=100-i-j;k++)

{ m=i+j+k; n= 5*i+3*j+k/3 ;

if( m= =100&&n= =100&&12%3= =0 ) printfj,k); } } 六、改错题。 ⒈ main( )

{ int n,s=0,p=0,i=1; scanf(“%d”,&n); while(i>=n)

{ p=p*i; s=s+p; i++;}

printf(“%d,%d,%d\\n”, i ,p ,s );} ⒉ main( )

{ char a[10],b[10],i;

for(i=0;i<10;i++) scanf(“%d”,a[i]); b=a; for(i=0;i<10;i++) printf(“ %d”,b[i]);} ⒊main( )

{ int n,i=1; float sum=0; scanf(“%d”,n); while(i<=n)

{ sun=sum+1/i; i++; } printf(“%d,%f\\n”,i,sum); } ⒋ main( )

{ char str1[10],str2[10];

19

(“i=%d j=%d k=%d\\n”,i,for(i=0;i<10;i++) scanf(“%c”,&str1[i]); scanf(“%s”,&str2);

if(str1= =str2) printf(“两个字符串相等!\\n”); else printf(“两个字符串不相等!\\n”);}

⒌以下程序的功能为:求两个正整数m和n的最大公约数及最小公倍数,请指出程序中的错误并改正之。 main()

{ int m,n,a,b,r;

printf(“请输入两个正整数:\\n”); scanf(“%d,%d”,&m,&n); if(m>n) { r=m; m=n; n=r;} a=m ; b=n ; r=a%b ;

while(r!=0) {r=a%b; a=b; b=r;}

printf(“它们的最大公约数是:%d\\n”,a); printf(“它们的最小公倍数是:%d\\n”,m*n/b);}

⒍ 以下程序的功能为求1~20的阶乘的和,请指出程序中的错误并改正之。 main()

{ float n,s,t=0;

for(n=1;n<20;n++) {t=t*n; s=s+t;} printf(“1!+2!+3!+?+20!=%e\\n”,s);}

⒎ 以下程序的功能为:输出1000以内不能被3整除且尾数为3的所有正整数,请指出程序中的错误并改正之。

main() { int n;

for(n=1;n<1000;n+=10) { if(n%3!=0) continue; printf(“%d\\n”,n); } }

七、编程题。

⒈ 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 ⒉ 编程输出200以内所有能被3整除,并能被5整除余3,被7整除缺1的正整数。 ⒊ 编程由键盘输入一个三位数,要求按逆序输出各位数字。

⒋ 编程由键盘输入30个学生的一门课的成绩,输出大于平均成绩的分数,并统计出高于平均成绩的人数。 ⒌ 编程输出1000以内所有能被3整出,且尾数含数字6的正整数。 ⒍编程由键盘输入一个三位数,输出此三位数各位数字之和。

⒎ 编程据公式π/6=1/1+1/2+1/3+?+1/n,求π的近似值,直到最后一项的值小于10时为止。 ⒐ 编程输出1000以内所有被3除余2、被5除余3、被7除余1的正整数。

2

2

2

2

2

-8

20

⒑ 编程从键盘上输入若干个学生的成绩,统计计算出平均成绩,最终输出平均成绩、低于平均分成绩的学生成绩和人数及总人数,用输入负数结束输入,要求学生的成绩定义为数组变量。

21


C程序设计考试复习题(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:六年级数学总复习练习

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: