C语言平台答案_第1页
C语言平台答案_第2页
C语言平台答案_第3页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1:求1到n的累加和(10分)输入一个整数n,求1+2+3+n的累加和。输入格式:输入一个整数。输出格式瀚出1n的累加和。输入样例:在这里给出一组输入。例如: 5输出样例:在这里给出相应的输出。例如: 15#i nclude"stdio.h"main ()int i,n,t;scan f("%d",&n);t=0;for(i=1;i<=n ;i+)t=t+i;prin tf("%d",t);2:求三角形面积 (10分)输入三角形的三边长,求其面积。输入格式:在一行中输入能够构成三角形的3个实数,3个数之间用逗号间隔。输出

2、格式:对每一组输入,在一行中输出面积值,结果保留两位小数,没有附加字符。输入样例:3,3,3输出样例:3.90#i nclude "stdio.h"#i nclude"math.h"main ()float a,b,c,s,w;scan f("%f,%f,%f",&a,&b, &c); w=(a+b+c)/2;s=sqrt(w*(w-a)*(w-b)*(w-c);prin tf("%.2fn",s);3 :分段函数1(12分)计算分段函数,测试数据分别是-2、3、7。131x<02k+

3、1sinu+5输入格式:输入一个数输出格式 瀚出x=多少,y=多少,输出的x和y值均保留两位小数输入样例:-3输出样例:x=-3.00,y=2.00#include "stdio.h"#include "math.h"main()float x,y; scanf("%f",&x);if(x<0) y=fabs(x+1);else if(x>5) y=sin(x)+5;else y=2*x+1; printf("x=%.2f,y=%.2f",x,y);4 :斐波那契(Fibonacci)数列前20

4、项。#include"stdio.h"main()long int a20=1,1;int i;for(i=2;i<20;i+)ai=ai-1+ai-2;for(i=0;i<20;i+) printf("%8d",ai);5:求1-3+5-99+101的值。#include"stdio.h"#include"math.h"main()int i,n,s;i=1;s=1;for(n=1;n<=100;n=n+2)s=s+pow(-1,i+)*n;i+;printf("s=%d",

5、s);6:求 1*2+2*3+ +20*21 的值。#include"stdio.h"main()int i,n,t;n=0;for(i=1;i<=20;i+)t=i*(i+1);n=n+t;printf("%d",n);7:各位数字之和(10 分)求任一正整数的各位数字之和。输入格式 :输入一个正整数。输出格式 :输出整数的各个位数字之和的结果。#include"stdio.h"main()int i,k=1,n,s,nc=1,ni,sum=0; scanf("%d",&n);int j,t=1;f

6、or(i=1;n/t>=10;i+)k+=1;t*=10;s=n;for(i=1;i<=k;i+)s=n/nc;ni=s%10;sum+=ni; nc*=10;printf("%d",sum);8:辗转相除法求最大公约数。 #include"stdio.h" main()int n,r,m;scanf("%d,%d",&m,&n);r=m%n;while(r!=0)m=n;n=r; r=m%n;printf("gcd=%dn",n);9:猜算式? 2*7 ? =3848中的数字(10 分

7、)算式:? 2*7 ? =3848 中缺少一个十位数和一个个位数。编程求出使该算式成立时的这两个 数,并输出正确的算式。输出格式 :在一行中输出 A2*B7=C 的值。#include <stdio.h>main()int i,j,A,B;for(i=1;i<=9;i+)A=i*10;for(j=1;j<=9;j+)B=j;if(3848=(A+2)*(B+70) printf("%d2*7%d=3848",i,j);10:输出各位数字之和能被 15 整除的所有数 (10 分 )输出 100 到 1000 之间的各位数字之和能被 15 整除的所有数,

8、输出时每 5 个一行,每个数 输出占 4 列列宽。输出格式 :在每行中输出 5 的满足要求的数值,每个数输出占4 列列宽。#include"stdio.h"main()int n,i=0,a,b,c,m; for(n=100;n<=999;n+)a=n/100;b=n/10%10;c=n%10;m=a+b+c; if(m%15=0)printf("%4d",n);i+;if(i%5=0) printf("n");11:求 1!+3!+5!+ +n!(10 分)求1!+3!+5!+n!的和,要求用循环嵌套设计,n <12。输

9、入格式:输入在一行中给出一个不超过12的正整数no输出格式:在一行中按照格式"n=n值,s=阶乘和”的顺序输出,其中阶乘和是正整数。#i nclude <stdio.h>main ()int i,t,n,k=1,s=0;scan f("%d",&n);if(n <12)for(i=1;i<=n ;i+=2)for(t=1;t<=i;t+)k=t*k;s=k+s;k=1;prin tf(" n=%d,s=%d", n,s);12:打印等腰三角形图形$o o o o o$o o o o o o o$第一行图形符

10、号前面有4个空格。输出格式:以等腰三角形的格式输出5行由"$"符号构成的三角图形,每个"$"符号占固定1位,第一行"$"符号前有4个空格。#i nclude <stdio.h>main ()int i,j;for(i=1;i<=5;i+)for(j=1;j<=5-i;j+)printf("");for(j=1;j<=2*i-1;j+)prin tf("$");prin tf("n ”);(10 分 )13:打印倒直角三角形图形 请编程序打印如下图形。d*

11、d* d* d* d*$ 第一行图形符号前面有 1 个空格。 输出格式 :以倒直角三角形的格式输出5 行由"$" 符号构成的三角图形,每个 "$"符号占固定 1位,第一行第一个 "$"符号前有 1 个空格。#include <stdio.h> main()int i,j; for(i=1;i<=5;i+)for(j=1;j<=i;j+) printf(" ");for(j=1;j<=6-i;j+) printf("$");printf("n");

12、 14:打印平行四边形图形 (10 分) 请编程序打印如下图形。d* d* d* d* d*$d* d* d* d* d*$d* d* d* d* d*$d* d* d* d* d*$d* d* d* d* d*$ 第一行图形符号前面有 1 个空格 输出格式 :以平行四边形的格式输出 5 行由"$"符号构成的图形,每个 "$"符号占固定 1 位,第一行第一 个"$"符号前有 1 个空格。#include <stdio.h> main() int i,j; for(i=1;i<=5;i+) for(j=1;j<=

13、i;j+) printf(" ");for(j=1;j<=5;j+) printf("$");printf("n"); 15:打印出如下图案(菱形)*第一行图形符号前面有 5 个空格输出格式 :以菱形的格式输出 7 行由乘号构成的图形,每个乘号占固定 1 位,第一行乘号前 有 5 个空格。#include"stdio.h"main()int i,j;for(i=1;i<5;i+) for(j=1;j<=6-i;j+) printf(" ");for(j=1;j<=2*i-

14、1;j+)printf("*");printf("n");for(i=1;i<4;i+)for(j=1;j<=i+2;j+)printf(" ");for(j=1;j<=7-2*i;j+) printf("*");printf("n"); 16:打印直角九九乘法表(10 分 )输出直角九九乘法口诀,输出效果如样例。输出格式 :以左下直角的格式输出九九乘法表,每个式子按“a*b=c ”形式输出,其中 a 和 b各占 1 位列宽, c 占 3 位列宽并左对齐。输出样例 :1*1=1

15、 2* 1=2 2*2=43*1=3 3*2=6 3*3=94*1=4 4*2=8 4*3=12 4*4=165* 仁5 5*2=10 5*3=15 5*4=20 5*5=256*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=367*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=498*仁8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=649*仁9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81#in clude&qu

16、ot;stdio.h"main ()int i,j;for(i=1;i<=9;i+)for(j=1;j<i+1;j+)prin tf("%d*%d=%-3d",i,j,i*j);prin tf("n");17:求 1 ! +2! +n!#i nclude"stdio.h"main ()int n ,s,i,m;scan f("%d",&n);s=1;m=0;if(n >=1 &&n <12) for(i=1;i<=n ;i+)s=s*i;m=m+s;

17、prin tf("m=%d",m);18:统计80到90分人数 (10分)输入若干学生成绩,以负数结束输入。计算所有学生的平均成绩并统计成绩在80到90分(不含90)之间的人数。输入格式:在一行输入几个百分制实型成绩,数据之间以一个空格间隔。输入负数结束输入。输出格式:在一行中按照“ ave=平均分,门=人数”的顺序输出结果,其中平均分要求保留两 位小数,人数是正整数。#i nclude"stdio.h"main ()int a,i,s=0,n=0;float ave; scanf("%d",&a);for(i=0;a>

18、0;i+)s=s+a; if(a>=80&&a<90) n+;scanf("%d",&a);ave=s*1.0/i; printf("ave=%0.2f,n=%d",ave,n);19: 3个数字构数(10 分)用 0-9 之间不同的 3 个数构成一个 3 位数,统计出共有多少种方法。 输出格式 :按照“ count= 结果”格式输出,结果为整数,不加宽度控制。 #include"stdio.h" main()int count,i,n=0,a,b,c; for(i=100;i<=999;i+

19、)a=i%10; b=i/10%10;c=i/100;if(a!=b&&b!=c&&a!=c)n+; printf("count=%d",n);20:n 141-1/3+1/5求 n (10 分)0.000001 为止。列,并保留 4 位用公式n /41-1/3+1/5求n的近似值,要求直到最后一项的绝对值小于 输出格式:按照“ pi= 结果”的顺序输出,其中结果输出的格式宽度为 10 小#include"stdio.h" #include"math.h" main()int p=1;float sum

20、=0,s=1,k=1; while(fabs(s)>=1e-6)sum=sum+s;p=-p;k=k+2;s=p*1.0/k;sum=sum*4;printf("pi= %.4f",sum);21:统计两整数间被 3整除数的个数 (10 分) 输入两个整数,n1,n2(要求n1<n2),统计两整数范围内被3整除的数的个数。输入格式 :在一行输入 2 个整数。两个整数之间用一个空格间隔输出格式:按照“ a=n 1,b=n2,n=个数”的顺序输出。其中n1、n2和个数的输出格式均为原样输出,不加宽度控制。#include"stdio.h"main

21、()int i,n1,n2,n=0;scanf("%d%d",&n1,&n2);if(n1<n2)for(i=n1;i<=n2;i+)if(i%3=0)n+; printf("a=%d,b=%d,n=%d",n1,n2,n);22:各位数字平方和 (10 分)程序功能是输入一个长整数,求各位数字的平方和s。如果输入的是负数,求其相反数的各位数字的平方和。 例如:输入 -123,输出 14。输入格式 :直接输入一个长整数。输出格式:按照“ sum=s”的格式输出,其中各位数字的平方和s原样输出,不加宽度控制。#include&q

22、uot;stdio.h"#include"math.h"int main(void)int n,s,k,t;scanf("%d",&n);if(n>0)s=0;k=n;while(k!=0)t=k%10;s=s+t*t;k=k/10;if(n<0)n=fabs(n); s=0;k=n;while(k!=0)t=k%10;s=s+t*t;k=k/10;printf("sum=%d",s);return 0;23:交换a和b的值 (10分)交换变量a, b的值,如输入a的值为1, b的值为5,则输出a的值为5

23、, b的值为1。 输入格式 :输入两个整数,之间用一个空格间隔。输出格式:在一行中按照“ a=x,b=y”的格式输出,其中x和y均是原样输出,不加宽度控制。 #include "stdio.h"main()int a,b,t; scanf("%d%d",&a,&b);t=a;a=b;b=t; printf("a=%d,b=%d",a,b);24:华氏温度转化为摄氏温度 (10分)将华氏温度转化为摄氏温度(下式中c表示摄氏温度,f表示华氏温度)。c=5/9 (f-32)输入格式 :直接输入一个实数,没有其它任何附加字符。

24、输出格式:在一行中按照“ c=结果”的顺序输出,结果为保留2位小数的实数,没有其它任何附加格式控制。#include "stdio.h"main()float f,c; scanf("%f",&f);printf("c=%.2f",c=5*(f-32)/9);25:求 n!#include"stdio.h"main()int n,t,i;t=1;scanf("%d",&n);for(i=1;i<=n;i+) t=t*i;printf("%d",t);26

25、:10 个数的最大值 #include"stdio.h" main()int max,i,n;for(i=1;i<=10;i+) scanf("%d",&n); if(n>=max) max=n;printf("max=%d",max);27: 1,40能被 3 整除的数 #include"stdio.h" main()int n;for(n=1;n<=40;n+) if(n%3=0) printf("%4d",n);28: 1,100能被 3 整除的数的和 #incl

26、ude"stdio.h" main()int n,t;t=0;for(n=1;n<=100;n+) if(n%3=0) t=t+n; printf("%4d",t);29: 1,100能被 3 整除的数的个数 #include"stdio.h"main()int n,t;t=0; for(n=1;n<=100;n+) if(n%3=0) t+; printf("%d",t);30:求 1 到 6 的阶乘的和 .#include"stdio.h"main()int i,n=1;floa

27、t s=0;for(i=1;i<=6;i+)n=n*i;s=s+n;printf("jiecheng=%.6f",s);3 轮。31 输入 10 个无序的整数,用选择法对 10 个整数按升序排序。注意:要求排序只排 #include"stdio.h" main()int a10;int i,b,min,j,k;for(i=0;i<10;i+) scanf("%d",&ai);for(i=0;i<3;i+)k=i;for(j=i+1;j<10;j+)if(aj<ak) k=j;if(k!=i)b=a

28、i;ai=ak;ak=b; for(i=0;i<10;i+) printf("%5d",ai);32 对 n 个整数组成的一维数组按逆序重新存储并输出(n<10 )。#include"stdio.h"main()int a80,b80;int i,n; scanf("%d",&n);for(i=0;i<n;i+)scanf("%d",&ai);for(i=0;i<n;i+)bi=an-i-1;printf("%4d",bi);return 0;33:对n个

29、整数组成的一维数组用顺序法按从小到大排序后输出(4<n<10),要求排序只排3 轮。#include"stdio.h"main()int a10;int i,n,t,j,k; scanf("%d",&n);if(n>4&&n<10)for(i=0;i<n;i+)scanf("%d",&ai);for(i=0;i<3;i+)k=i;for(j=1+i;j<n;j+)if(aj<ak) k=j;if(k!=i)t=ai;ai=ak;ak=t; for(i=0;

30、i<n;i+) printf("%5d",ai);return 0;34:在一维数组中有 10 个整数,求出其中能被 5 整除的所有数的和。#include"stdio.h"main()int a10,s=0,i; for(i=0;i<10;i+) scanf("%d",&ai);if(ai%5=0)s=s+ai;printf("%d",s);35: 在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列,已知升序 数组 1, 2, 4, 6, 8, 9, 12, 15, 149,

31、156 。#include"stdio.h"main()int a11=1,2,4,6,8,9,12,15,149,156;int i,num,j;scanf("%d",&num); if(num>a9) a10=num;else for(i=0;i<10;i+) if(num<ai) for(j=9;j>=i;j-) aj+1=aj; ai=num; break;for(i=0;i<11;i+) printf("%5d",ai);36: 有一数组内放 5 个整数, 要求找出第一次出现的最小数和它

32、的下标,然后把它和数组中最前面的元素即第一个数对换位置。#include"stdio.h"main()int a5;int i,min,t,p;for(i=0;i<5;i+)scanf("%d",&ai); min=a0;for(i=0;i<5;i+)if(ai<min)min=ai; p=i; t=a0;a0=ap;ap=t; for(i=0;i<5;i+)printf("%4d",ai); printf("n");printf("min=%d,weizhi=%d&quo

33、t;,min,p);37: 产生并输出如下形式的方阵。1 2 2 2 2 2 13 1 2 2 2 1 43 3 1 2 1 4 43 3 3 1 4 4 43 3 1 5 1 4 43 1 5 5 5 1 41 5 5 5 5 5 1 #include"stdio.h" main()int a77;int i,j; for(i=0;i<7;i+)for(j=0;j<7;j+)if(i=j|j+i=6)aij=1;if(i<j&&i+j<6)aij=2;if(i<j&&i+j>6)aij=4;if(i>

34、;j&&i+j>6)aij=5;if(i>j&&i+j<6)aij=3; for(i=0;i<7;i+) for(j=0;j<7;j+)printf("%2d",aij); printf("n"); 39:将一个3 x 3矩阵转置(即行和列互换)#include"stdio.h"main()int b9,a33;int i,j;for(i=0;i<9;i+)scanf("%d",&bi);for(j=0;j<3;j+)for(i=0;

35、i<3;i+) aji=bj+i*3; printf("%4d",aji);printf("n");40: 打印 n 行杨辉三角, n<10。#include"stdio.h"main()int i,j,n;int a3131=0;scanf("%d",&n);for(i=0;i<n;i+)for(j=0;j<=i;j+)if(j=0|j=i) aij=1;else aij=ai-1j-1+ai-1j;for(i=0;i<n;i+)for(j=0;j<=i;j+)prin

36、tf("%4d",aij);printf("n");return 0;41:连接两个字符串,不允许使用strcat函数。#i nclude"stdio.h"#i nclude"stri ng.h"main ()char a20,b20;int i,j;gets(a);gets(b);i=0;while(ai!='O')i+;j=0;while(bj!='0')ai=bj;i+;j+;ai='O:puts(a);42:分别统计一个字符串中出现小写字母、大写字母、数字和空格的个数

37、。#i nclude"stdio.h"main ()char a40;int i,p=O,b=O,c=O,d=O;gets(a);for(i=0;ai!='0'i+)if(ai>='a'&&ai<='z') p+;if(ai>='A'&&ai<='Z') b+;if(ai>='0'&&ai<='9') c+;if(ai=' ')d+;printf("小写字

38、母=%dn",p);printf("大写字母=%dn",b);printf("数字=%din",c);printf("空格=%dn",d);43:从键盘输入一个字符串,再输入两个整数m和n,将字符串从下标为m的字符开始的 n个字符复制到另一个字符数组中。#i nclude"stdio.h"main ()char s120,s220;int i,n ,m,j=O;gets(s1);scan f("%d%d",&m,&n);for(i=m;i <n+m;i+)s2j=

39、s1i;j+;s2j='0:puts(s2);abcde",则逆序存放后应为"edcba"。44:将一个字符串中的字符逆序存放。如字符串为#i nclude"stdio.h"#i nclude"stri ng.h"main ()char s180,s280;int i,k;gets(s1);k=strle n( s1);for(i=0;s1i!='0'i+)s2i=s1k-1-i;s2i='0'puts(s2);45:将一个字符串中的所有数字字符删掉。#i nclude"st

40、dio.h"main ()char a80,b40;int i,j=0;gets(a);for(i=0;ai!='0'i+)if(ai<'0'|ai>'9')bj=ai;j+;bj='0'puts(b);46: 删除字符串中的指定字符,字符串和要删除的字符均由键盘输入。#include"stdio.h"main()char a80,b40,c;int i,j=0;gets(a);c=getchar();for(i=0;ai!='0'i+)if(ai!=c)bj=ai;j+;

41、bj='0'puts(b);47: 将一个字符串中的前 n 个字符复制到一个字符数组中去, n 值小于字符串实际长度,不 许使用 strcpy 函数。#include"stdio.h"main()char s180,s280;int i,n;gets(s1);scanf("%d",&n);for(i=0;i<n;i+)s2i=s1i;s2i='0'puts(s2);48: 打印水仙花数。水仙花数是一个三位数,其各位数字的立方和与原数相等。#include"stdio.h"main()int

42、 i,n,a,b,c;for(i=100;i<=999;i+)a=i%10;b=i/10%10;c=i/100;n=a*a*a+b*b*b+c*c*c;if(n=i)printf("%5d",i);printf("n");49: 编程求出 120 之间的奇数之和,偶数之积。 #include"stdio.h" main()int s=0,i; double t=1; for(i=1;i<=20;i+) if(i%2=0) t=t*i; else s=s+i; printf("s=%d,t=%.0lf",

43、s,t);50: 统计 100 以内的各位数字之和为 5 的自然数的个数。 #include"stdio.h" int main(void) int n,s,k,count=0;for(n=1;n<=100;n+) s=0;k=n;while(k!=0)s=s+k%10; k=k/10;if(s!=5) continue;else count+; printf("%d",count);return 0;51:从键盘输入一个任意正整数判断其是否为素数,若为素数则输出"YES"否则输出” NO"。#include"

44、;stdio.h" main()int n,i;scanf("%d",&n);if(n>1)for(i=2;i<n;i+) if(n%i=0) break; if(n=i) printf("YES"); else printf("NO");52: 编程求出大于 m 的最小素数。#include"stdio.h"#include"math.h"main()int m,i,k=0,x;scanf ("%d",&m);for (i=m+1;k=

45、0;i+)for (x=2;x<=sqrt(i);x+)if (i%x=0) break; if (x>sqrt(i) k=1;printf ("%d",i);:2+22+222+2222(此时 n = 4),53:求Sn= a+aa+aaa+.+aa.a之值,其中a是一个数字。例如 n 由键盘输入。#include"stdio.h"main()int a,n,sn=0,i,t; scanf("a=%d,n=%d",&a,&n); t=a;for(i=1;i<=n;i+)sn=sn+a;a=a*10+

46、t; printf("%d",sn);54: 求出以下分数序列的前 20 项之和。2/1+3/2+5/38/5+13/8+21/13#i nclude"stdio.h"main ()int a=1,b=2, n,t;double s=0;for(n=1; n<=20; n+)s=s+b*1.0/a;t=b;b=a+t;a=t;prin tf("%.2f",s);yes”的信息,否则输出no ”的55:输入一个年份,判断其是否为闰年,若是闰年输出 信息。#i nclude"stdio.h"main ()int

47、a;scan f("%d",&a);if(a%4=0&&a%100!=0|a%400=0) prin tf("yes");elseprin tf(" no");56:任意输入10个整数,求其中偶数之积#i nclude"stdio.h"main ()int a,i,s=1;for(i=1;i<=10;i+)scan f("%d", &a);if(a%2=0) s=s*a;prin tf("%d",s);57:计算数列的第n项。咼=1/尸1

48、丿(1一迴)用尸1/(1+对,卫尸1/(1+皿1)#i nclude"stdio.h"main ()int n,i;float a=1;scan f("%d",&n);if(n=1) a=1;for(i=2;i<=n ;i+)a=1.0/(a+1);prin tf("%f",a);58:求出100200之间的全部素数,每行输出8个数,每个数宽度为5列。#i nclude"stdio.h"#i nclude"math.h"main ()int n ,i,k,p=0;for(n=100

49、 ;n<=200; n+)k=sqrt (n);for(i=2;i<=n/2;i+)if(n %i=0) break;if(i>k)prin tf("%5d", n);p+;if(p%8=0) pri ntf("n");59:求出200以内各位数字之和为9的所有数的平均值。#i nclude"stdio.h"int main( void)int n, s,k,co un t=0,sum=0;float ave;for(n=1; n<=200; n+)s=0;k =n;while(k!=0)s=s+k%10;k=

50、k/10;if(s!=9) continue;elsesum=sum+n;coun t+;ave=sum*1.0/co unt;prin tf("%.2f",ave);return 0;60:输入n ,然后求下列表达式的值。1 1 1S = 1 +1-+ 导+J1 + 21 + 2 + 3t + 眾#i nclude"stdio.h"main ()int n, sum=1,i;float s=0;scan f("%d",&n);for(i=2;i<=n+1;i+)s=s+1.0/sum;sum=sum+i;prin tf

51、("%f",s);61: 一个数组有8个元素,将前3个元素通过移动串到后3个位置上,如果其初始数据为:1 2 34 5 6 7 8不增加数组,也不增加数组的存储单元,通过移动数组元素将数组变化为:45 6 7 8 1 2 3#i nclude"stdio.h"main ()int a8,b8;int i;for(i=0;i<8;i+)scan f("%d", &ai);for(i=0;i<8;i+)if(i<3) bi+5=ai;elsebi-3=ai;for(i=0;i<8;i+)prin tf(&q

52、uot;%3d",bi);62:找出含有10个元素一维数组中的最大值和最小值,并互换这两个数的位置。#i nclude"stdio.h"main ()int a10;int i,max,min,t,k,p;for(i=0;i<10;i+)scan f("%d", &ai);min=a0;max=aO;for(i=0;i<10;i+)if(ai>max)max=ai;k=i;if(ai<mi n)min=ai;p=i;prin tf("max=%d,mi n=%d",max,mi n);prin

53、 tf("n");t=ap;ap=ak;ak=t;for(i=0;i<10;i+)prin tf("%5d",ai);63:用数组存储并输出Fibonacci数列的前20项,按5个一行输出,11 235813213455891442333776109871597258441816765#in clude"stdio.h"main ()long int a20=1,1;int i,n=0;for(i=2;i<20;i+)ai=ai-1+ai-2;for(i=0;i<20;i+)prin tf("%1Od&qu

54、ot;,ai);n+;if(n %5=0) prin tf("n");64: 个数列的前三个数是0、0、1,以后的每个数都是前三个数的和,编程求改数列的前20项,并按每行4个数的格式输出。001 1247132444811492745049271705313657681060919513#i nclude"stdio.h"main ()long int a20=0,0,1;int i,n=0;for(i=3;i<20;i+)ai=ai-1+ai-2+ai-3;for(i=0;i<20;i+)prin tf("%10d",a

55、i);n+;if(n %4=0) prin tf("n");65:输入10个正整数到a数组中,求a数组中素数的平均值。#i nclude"stdio.h"main ()int a10;int i,j,p=0,s=0;float ave;for(i=0;i<10;i+)scanf("%d",&ai); if(ai>1) for(j=2;j<ai;j+) if(ai%j=0) break; if(j=ai) s=s+ai; p+; ave=s*1.0/p;printf("%.2f",ave);

56、66:输入一个4 X 4数组,求一个4 X 4数组左下三角(包括主对角线)元素的和。输入格式 :输入 4 行 4 列的方阵,每行第一个数前没有空格,每行的每个数之间各有一个空 格。#include"stdio.h"main()int a44;int i,j,s=0;for(i=0;i<4;i+)for(j=0;j<4;j+)scanf("%d",&aij);if(j<=i) s=s+aij;printf("%d",s);67: 求一个 3X 4 数组中大于等于平均值的所有数组元素的和, 并统计满足条件的元素个

57、数。 本题中的平均值为小数,用到的其他所有变量均为整型。#include"stdio.h"main()int a34;int i,j,sum=0,n=0,p=0,s=0;float ave;for(i=0;i<3;i+)for(j=0;j<4;j+)scanf("%d",&aij); sum=sum+aij;p+;ave=sum*1.0/p;for(i=0;i<3;i+)for(j=0;j<4;j+) if(aij>=ave) s=s+aij; n+; printf("s=%d,n=%d",s,n

58、);68:求一个5 X 5方阵主对角线元素的和以及副对角线元素的积。#include"stdio.h"main()int a55;int i,j,s=0,t=1;for(i=0;i<5;i+)for(j=0;j<5;j+) scanf("%d",&aij); if(i=j) s=s+aij; if(i+j=4) t=t*aij;printf("s=%d,t=%d",s,t);69: 求一个 4X 5 数组周边元素的累加和。#include"stdio.h"main()int a45;int i,

59、j,s=0;for(i=0;i<4;i+)for(j=0;j<5;j+)scanf("%d",&aij); if(i=0|j=0|i=3|j=4) s=s+aij;printf("%d",s);70: 从键盘上输入若干( <20)个学生的成绩,统计计算出平均成绩,并输出低于平均分的 学生成绩,用输入负数结束输入。#include"stdio.h"main()int i,s=0,n=0;float ave,a19;i=0;scanf("%f",&ai);while(ai>0)s=s+ai;i+;scanf("%f",&ai);ave=s*1.0/i; printf("ave=%0.2fn",ave);for(i=0;ai>0;i+)if(ai<ave) printf("%6.1f",ai);71: 把一个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论