C语言期末考试编程题_第1页
C语言期末考试编程题_第2页
C语言期末考试编程题_第3页
C语言期末考试编程题_第4页
C语言期末考试编程题_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、1. 打印出所有的 水仙花数”并按照 一行5个的格式输出。所谓 水仙花 数”是指一个三位数,其各位数字立 方和等于该数本身。例如:153是- 个水仙花数”因为153=1*1*1 + 5*5*5 + 3*3*3。#include<stdio h>void main()int a,b,c,s,i=0;for(s=100;s<1000;s+)c=s%10;b二s/10%10;a=s/100;if(s=a*a*a+b*b*b+c*c*c) printf("%dt",s);+i;if(i%5=0) printf("n");2. 求 1+2!+3!

2、+20!的和#in clude<stdio.h>void mai n()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;prin tf("%.0fn",sum);3. 输入一个5位数,判断它是不是回 文数。即12321是回文数,个位与万 位相同,十位与千位相同。#in clude<stdio.h> #include<stdlib.h>void main()long num;int a,b,c,d;

3、printf("Pleaseinputnumber:");scanf("%d",&num);if(num<=9999|num>=100000)prin tf("%Thenu mbererror!' n");exit(0);a=n um/10000;theisb=num/1000%10;c=num/10%10;d=num%10;if(a=d&&b=c)printf("n Yes,the%ld ispalindrome!n",num);elseprintf("nNo

4、,the%ld is notpalindrome!n",num);4. 求出1至S 1000之内能被7或11 整除、但不能同时被7和11整除的 所有整数并并按照一行5个的格式输 出。#include<stdio h>void main()int num,i=O;for(num=1;num<=1000;num+)if(num%7|num%11)=1)&&(num%7&&num%11)=0)pri ntf("%dt", nu m);+i;if(i%5=0)printf("n");5. 编程列出200

5、以内所有的素数,按 照一行10个的格式输出,并求出所有素数的平均值,#include<stdio .h>#include<math .h>void main()int i,j,k=0,sum=0,avg=0; for(i=2;i<200;i+)for(j=2;j<=sqrt(i);j+) if(i%j=0) break;if(j>sqrt(i)printf("%dt",i);+k;sum+=i;if(k%10=0)printf("n");avg=sum/k;printf("n Theaverageis

6、%dn",avg);6、编写一个函数,输入n为偶数时,调用函数求 1/2+1/4+.+1/n, 当输 入n为奇数时,调用函数1+1/3+1/5+1/n#in clude<stdio.h>void mai n()void odd(int n);void even(int n); int n;inputtheprintf("Please number:");scanf("%d",&n);if(n%2)odd(n);elseeven(n);void odd(i nt n)float sum=0.0;float j;int i;fo

7、r(i=1;i<=n;i+=2) j=1.0/i;sum+=j;prin tf("%fn",sum);void eve n(i nt n)float sum=0.0;int i;float j;if(n=0)printf("%fn",sum);elsefor(i=2;i<=n;i+=2)j=1.0/i;sum+=j;prin tf("%fn",sum);7、已知 abc+cba=1333,其中 a,b,c均为一位数,编程求出满足条件的a,b,c所有组合。#inc-udeASsiohv void main() 宀inf ab

8、c-fo(adAH9d+) fo(bHbAHb+) fo(CHr c A HC+) if(u oa+b+c+1 oc+b+a)HHI 333) pint:f(H%dbH%CH%2nabc )-岳丫彗> 120100 2西吉謡数,统计出小于60, 60到79, 80到100三个范围的整数各有多少个?#include<stdio .h>#i nclude<stdlib.h>void main()int i,j,k,n,num;i=j=k=0;prin tf("Pleasein put the 12numbers with 0100:");for(n

9、=1; n<=12; n+)scanf("%d",&num);if(!(num>=0&&num<=100)exit(0);if(num<60) +i;else if(num<80) +j;else +k;printf("nThereare %dnumbers less than 60,%d numbers between 60 and 79,%d numbers between 80 and 100.n" ,i,j,k);9、求这样一个三位数并输出该数字, 该三位数等于其每位数字的阶乘之 和。即: a

10、bc = a! + b! + c!#in clude<stdio.h>void mai n()int a,b,c,num;int s(i nt);for(num=100;num<1000;num+)a=num/100;b=num/10%10;c=num%10;if(num=s(a)+s(b)+s(c)pri ntf("Thenu mberis %dn", nu m);break;s(int n)int i,sum=1;for(i=1;i<=n ;i+)sum*=i;return sum;10、猜数游戏:由用户随机输入一个 1位正整数数让人来猜,只能猜

11、5次, 如果人猜对了,则在屏幕上显示“ You are so clever ”,否则计算机给出 提示,告诉人所猜的数是太大还是太 小,直到人猜对为止或者5次都猜不 对给出提示“ Game Ove”。#include<stdio .h>#i nclude<stdlib.h>void main()int num,i,n;printf("Pleaseinput thenumber with 09 for guessing:");scanf("%d",&num);system("cls");if(num<

12、0|num>9) exit(O);for(i=1;i<=5;i+)prin tf(" nPleasein putthe nu mber you guess:");scanf("%d",&n);if(num=n)printf("nYou are so clever!n");break;else if(n<num)number on timesprintf("nTheyou in put is little,go please!Youhave %dleft!n",5-i);con ti nue

13、;elsenumberprintf("nTheyou input is large,go on please! Youhave %d timesleft!n",5-i);continue;if(i>5)printf("GameOver!n");11、设N是一个四位数,它的9倍恰 好是其反序数(例如:123的反序数 是321),求N的值。#in clude<stdio.h>void main()int n,k,a,b,c,d;for(n=1000;n<=9999;n+)a=n/1000;b二n/100%10;c二n/10%10;d=

14、n%10;k=1000*d+100*c+10*b+a;if(k=9*n)printf("N=%dn",n);12、100匹马驮100担货,大马一匹 驮3担,中马一匹驮2担,小马两匹 驮1担。试编写程序计算大、中、小 马的数目。#in clude<stdio.h>void mai n()int h1,h2,h3;for(h1=0;h1<=100;h1+)for(h2=0;h2<=100;h2+) for(h3=0;h3<=100;h3+=2)if(h1+h2+h3=100&&3*h1+2*h2+1/2 *h3=100)printf

15、("Theoldhorse has %d,middle horsehas%d,younghorsehas %dn",h1,h2,h3);13、一位司机酒驾撞人逃跑。现场三 人目击事件,但都没记住车号,只记 下车号的一些特征。甲说:牌照的前 两位数字是相同的;乙说:牌照的后 两位数字是相同的;丙是位数学家, 他说:四位的车号刚好是一个整数的 平方。请根据以上线索求出车号。(车 号为4位数)#in clude<stdio.h> #include<math.h>void main()int n,a,b,c,d,i;for(n=1000;n<=9999

16、;n+)a=n/1000;b二n/100%10;c二n/10%10;d=n%10;i=sqrt( n);if(a=b&&c=d&&i*i=n) printf("%dn",n);14、求S=1心*2)+1/(2*3)+1/(3*4)+前50项之和并输出结果。#include<stdio .h>void main()float i;float s=0;for(i=1;i<51;i+)s+=1.0/(i*(i+1);printf("%f",s);15、编程求出所有1000到3000之间 能被7、11、17同时整

17、除的整数,并 求其平均值,并输出结果(结果保留 两位小数)。#include<stdio .h>void main()int i,k=0,sum=0;for(i=1000;i<=3000;i+)if(i%7=0&&i %11=0&&i %17=0) sum+=i;+k;printf("%dt",i);printf("n%d",sum/k);16、编程找出满足下列条件的所有四 位数的和并输出:该数第一、三位数 字之和为10,第二、四位数字之积为12。#in elude <stdio.h>#in

18、elude vconio .h>int main (void)int i,j,x,y,z,m;for(i = 1000; i< 10000; i+)x = i/1000;y = (i/100)%10;z = (i/10)%10;m = i%10;if(x + z)=10&&(y+ m)=12)printf("%dt",i);printf("n");return 0;17、求并输出所有满足如下条件的三 位正整数:它是某整数的平方,它的 三位数码有两位是相同的。(如100是10的平方,它有两个0,225是15 的平方,它有两个2)。#include<stdio .h>#include<math .h>void main()int n ,i,a,b,c;for(n=100 ;n<=999;n+)a=n/100;b二n/10%10;c=n%10;i=sqrt( n);if(a=b|a=c|b=c )&&n=i*i) printf("%dt",n);18、输出所有大于1010的4位偶数, 且该类偶数的各位数字两两不相同。#include<stdio .h>void main()int num,a,b,c,d

温馨提示

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

评论

0/150

提交评论