C语言期末考试编程题.docVIP

  • 15
  • 0
  • 约7.63千字
  • 约 32页
  • 2019-08-24 发布于安徽
  • 举报
. . 1.打印出所有的“水仙花数”,并按照一行5个的格式输出。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1*1*1+5*5*5+3*3*3。 #includestdio.h void main() { int a,b,c,s,i=0; for(s=100;s1000;s++) { c=s%10; b=s/10%10; a=s/100; if(s==a*a*a+b*b*b+c*c*c) { printf(%d\t,s); ++i; if(i%5==0) printf(\n); } } } 2.求1+2!+3!+...+20!的和 #includestdio.h void main() { double fact=1.0,sum=0.0; int i,j; for(i=1;i=20;i++) { for(j=1;j=i;j++) fact*=j; sum+=fact; fact=1; } printf(%.0f\n,sum); } 3.输入一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。    #includestdio.h #includestdlib.h void main() { long num; int a,b,c,d; printf(Please input the number:); scanf(%d,num); if(num=9999||num=100000) { printf(%The number is error!\n); exit(0); } a=num/10000; b=num/1000%10; c=num/10%10; d=num%10; if(a==db==c) printf(\nYes,the %ld is palindrome!\n,num); else printf(\nNo,the %ld is not palindrome!\n,num); } 4. 求出1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数并并按照一行5个的格式输出。 #includestdio.h void main() { int num,i=0; for(num=1;num=1000;num++) if(((num%7||num%11)==1)((num%7num%11)==0)) { printf(%d\t,num); ++i; if(i%5==0) printf(\n); } } 5.编程列出200以内所有的素数,按照一行10个的格式输出,并求出所有素数的平均值,   #includestdio.h #includemath.h void main() { int i,j,k=0,sum=0,avg=0; for(i=2;i200;i++) { for(j=2;j=sqrt(i);j++) if(i%j==0) break; if(jsqrt(i)) { printf(%d\t,i); ++k; sum+=i; if(k%10==0) printf(\n); } } avg=sum/k; printf(\nThe average is %d\n,avg); } 6、编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1+1/3+1/5...+1/n #includestdio.h void main() { void odd(int n); void even(int n); int n; printf(Please input the nu

文档评论(0)

1亿VIP精品文档

相关文档