C语言经典编程实例

上传人:奇异 文档编号:60432643 上传时间:2022-03-07 格式:DOCX 页数:28 大小:64.47KB
收藏 版权申诉 举报 下载
C语言经典编程实例_第1页
第1页 / 共28页
C语言经典编程实例_第2页
第2页 / 共28页
C语言经典编程实例_第3页
第3页 / 共28页
资源描述:

《C语言经典编程实例》由会员分享,可在线阅读,更多相关《C语言经典编程实例(28页珍藏版)》请在装配图网上搜索。

1、C语言经典编程实例第1章为什么要学C语言【验证型】1.1Helloworid.让我们用c语言向世界问好。输入:无输出:Helbworld.1. #include2. intmain()3. 4. printf(Helloworld.nM);5. )1. .#include2. intmain()3. (4. printf(MWelcomen);5. printf(tonM);6. printf(Beijing.n);7. )第2章C数据类型【设计型】2.1学习打印你的第一个图形背景:我们已经学习了prhlf函数,这里给出了一个小程序,它运行的结果是输出一个由星号(*)组成的4*4的正方形。程序

2、如下:ttnchdehtmah0prhtf(letum0;)要求:按照上面的程序范例,编写一个小程序,要求输出的是4行由*号组成的等腰三角形。输入:无。输出:*1.#include2.intmain()3.(4.printf(*nM);5.printf(*nM);6.printf(*nM);7.printf(M*n)8.9.return0;10.)【验证型】2.2输出倒三角形【题目描述】输出指定的由、*组成的倒三角图案。【输入】无输入C【输出】按照指定格式输出由组成的倒r角图案.【样例输入】【样例输出】#include2.intmain()3.(4.printfC*nH);5.printf(M

3、*nM);6.printf(H*nH);7.printf(M*nM);8.9.return0;10.简单的算术运算和表达式【设计型】3.1分离3位整数任意从键盘上输入一个三位正整数,要求正确地分离出它的个位、十位和百位,并分别在屏幕上输出。比如输入的三位正整数1. #include2. #include3. intmain()4. 5. .intx,hundreds,tensunits;6. printf;7. scanf(%d、&x);8. hundreds=x/100;2. tens=x%100/10;3. units=x%100%10;4. printf(Munits=%dtens=%d

4、hundreds=%dnunitstenshundreds);5. )【验证型】3.2三位数分解求累加和(参考书P27例3.1与P49例4.4)题目描述输入一个3位的正整数n,编程计算整数n的各位数字之和。输入输入一个正整数n。输出各位数字之和sum。样例输入208样例输出10题目来源:2012年秋季期末考试1. .#include2. voidmain()3. (4. inta?xyJzsum=0;5. scanf(M%d&a);6. x=a/100;7. y=a/10%10;8. z=a%10;9. sum=x+y+z;10. printfsum);11. )【设计型】3.3整数四则运算【

5、题目描述】小明上小学一年级了,老师已经教会了他们进行整数的+、-、*、/、%计算,下面老师开始出题,给出一个简单的算术表达式,请小明给出计算结果。【输入】接受两个整数,每个整数之间使用空格分隔。【输出】分别输出进行+、-*、/、*之后的运行结果。【样例输入】103【样例输出】10+3=1310-3=710*3=3010/0=310%3=11. #include2. intmain()3. 4. inta,b;5. scanf(%d%d&a,&b);6. .printf(%d+%d=%dn,a,b,a+b);7. printf(%d-%d=%dn,a,b,a-b);8. printf(%d*%d

6、=%dna,bJa*b);9. .printf(%d/%d=%dna,b,a/b);10. .printf(%d%d=%dn,a,b,a%b);11. return0;12. )【设计型】3.4编程计算3位整数的逆序之题目描述见书P41题3.2提示:使用标准数学函数叁bsO。2.#include3#include4. intmain()5. (6. int7. scanf(%d&a);8. a=fabs(a);9. b=a/100;10. d=a%10;11. c=(a-b*100-d)/10;12. f=d*100+c*10+b;13. printf(%dn,f);14. return0;1

7、5. )键盘输入和屏幕输出【验证型】4.1printf和scanfprhtf函数和scanf函数是C语言中最常用的函数之一,下面让我们练习一下吧。输入:整型变量x的值。输出:输出整型变量x对应的十进制、八进制和十六进制形式。认真观察的八进制和十六进制输出,请想想是为什么。1. #include2. intmain()3. (4. intx;5. scanf(M%d&x);6. printf(Mx=%d/x);7. printf(Mx=%o/x);8. .printf(Mx=%xnMJx);9. return0;10. 【验证型】4.2字符的ASCH值【题目描述】从键盘输入一个字符,输出其对应的

8、ASCII码值。【输入】输入一个字符。【输出】输出字符对应的十进制ASCII码值。【样例输入】A【样例输出】651. #include2. intmain()3. (4. charch;5. ch=getchar();6. ch=ch;7. printf(%dn,ch,ch);8. 【验证型】4.3混合类型数据格式化输入【题目描述】顺序读入浮点数1、整数、字符、浮点数2.再按照字符、整数、浮点数1、浮点数2的顺序输出。【输入】输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。【输出】在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。【输入样

9、例】2.1288C4.7【输出样例】C882.124.702. #include3. intmain()4. 5. floata“b;6. intc;7. chard;8. scanf(M%f%d%cj&a,&c,&d,&b);9. printf(%c%d%.2f%.2fnM,d,c,aJb);10. return0;11. )【设计型】4.4猫画猫:计算柱的侧面积及体积如果已知圆柱的底面半径r,以及高h,则可计算出圆柱的侧面积s=2nrh,体积v=nr2ho其中tt=3.1415926输入第一行输入圆柱的底面半径r第二行输入圆柱的高h输出s=圆柱的侧面积,v=圆柱的体积要求1 .所有变量都定

10、义为双精度类型2 .结果精确到小数点后两位1. #include2. intmain()3. (4. doublev;5. doublepi=3.1415926;6. scanfC%lf&r);7. scanf(%lf,&h);8. s=2*pi*r*h;9. v=pi*r*r*h;10. printf(Ms=%5.2f,v=%5.2fnM,s,v);11. return0;12. )【设计型】4.6旅行时间和花费【题目描述】十一期间LaughhgSir和朋友自驾游去外地玩。已知旅行的距离和汽车平均速度,以及每公升汽油可以行独的公里数及每公升汽油的价格,求CoC。这趟驾3史汽车旅游所花费的时间

11、和购买汽油的钱数。【输入】输入四个数据,依次分别表示:旅行的距离(单位:公里)、汽车平均速度(公里/小时)、每公升汽油可以行驶的公里数(单位:公里)、每公升汽油价格(元公升)。【输出】输出汽车旅游所花费的时间(单位:小时)和购买汽油的钱数(单位:元)。输出数据都保留1位小数【样例输入】130011014.57.16【样例输出】11.8641.91. #include2. intmain()3. (4. floats5. scanf(%f%f%f%f,&s,&v,&h,&m);6. .t=s/v;all=s/h*m;7. printf(%.lf%.lfn,t,all);8. return0;9.

12、 【设计型】4.7计算月收入【题目描述】CoC。的表姐刚从大学毕业,进入到一家小型外贸公司工作。该公司员工月收入的计算方法为:月基本工资加当月提成。从键盘输入CoCo表姐某月的基本工资和该月的提成,计算并输出表姐该月的收入。【输入】输入两个数分别代表月基本工资和月提成。【输出】计算并输出月收入,保留2位小数。【样例输入】3150.21200【样例输出】4350.20|1.#include2. intmain()3. 4. floatticheng,gongzi;5. .scanf(%f%f”,&gongzij&ticheng);6. .printf(%.2fn,gongzi+ticheng);

13、7. return0;8. 【设计型】4.8男生和女生【题目描述】已知某班有男生nl位,女生n2位,nl位男生的平均分是x分,n2位女生的平均分是y分,问全体学生的平均分是多少?【输入】四个整数x、y、nl、n2【输出】全体学生的平均,保留2位小数【样例输入】90882321【样例输出】89.051. #include2. intmain()3. (4. intnl?n2;floatxyave;5. scanf(%f%f%d%d,&x,&y)&nl,&n2);6. .ave=(x*nl+y*n2)/(nl+n2);7. printf(“.2八n1ave);8. return0;9.10. )第

14、5章选择控制结构【设计型】5.1奇偶数问题描述:输入一个整数,判断其奇偶性。输入:整数n输出:n是奇数或n是偶数输入样例:3输出样例:3是奇数1. #include2. intmain()3. (4. inta;5. scanf(%d&a);6. if(a%2=0)7. printf(%d是偶数na);8. else9. printf(M%d是奇数na);10. return0;11. )【设计型】5.2绝对值问题描述:输入一个实数,不使用绝对值函数计算并输出该实数的绝对值。输入:一个实数输出:该实数的绝对值输入样例:3.5输出样例:3.51. #include2. main()3. (4.

15、floata;5. scanf(%f&a);6. if(a=0)7. printf(%.6fnM,a);8. ,else9. printf(M%.6fn,-a);10. return0;11. 【设计型】5.3判断闰年问题描述:输入一个年份,判断其是否闰年。输入:整数year输出:year是闰年或year不是闰年输入样例:2004输出样例:2004是闰年1. #include2. intmain()3. (4. intyear;5. scanfCd&year);6. if(year%4=0)&(year%100!=0)|(year%400=0)7. printf(%d是闰年n,year);8.

16、 .else9. printf(%d不是闰年n,year);10. return0;11. )【设计型】5.4出租车计费题目描述根据某城市普通出租车收费标准编写程序对车费进行计算。具体标准如下:起步里程为3km,起步费10元:10km以内超过起步里程部分,每千米2元,超过10km以上的部分,每千米3元。输入行驶里程数(单位千米)。输出乘客应支付的车费(单位元),结果四舍五入,保留到元。样例输入12.5样例输出32题目来源:2012年秋季期末考试1. .#include2. intmain()3. (4. floata“b;5. scanf(”%f&a);6. if(a3&a10)11. b=2

17、4+(a-10)*3;12. ppintf(“.0fn,b);13. return0;14. )【设计型】5.5整数位数判断输入一个不多于5位的正整数,要求:(D求它是几位数;逆序打印出各位数字。1. .#include2. intmain()3. (4. intnumjab,cd)e;5. scanf(M%d&num);6. if(num=100000)7. printf(Invalidinputn);8.9. elseif(num/10=0)10. (printf(Mln%dn,num);11. elseif(num/100=0)12. .printf(2n%d%dn,num%10,num

18、/10);13. elseif(num/1000=0)14. (15. a=num%10;16. b=num/100;17. c=(num-100*b)/10;18. printf(3n%d%d%dn,a,c,b);19. )20. elseif(num/10000=0)21. (22. a=num%10;23. b=num/1000;24. c=(num-1000*b)/100;25. d=(num-1000*b-100*c)/10;26. printf(M4n%d%d%d%dn,a,d,c,b);27. )28. else29. (30. a=num%10;31. b=num/10000;

19、32. c=(num-10000*b)/1000;33. d=(num-10000*b-1000*c)/100;34. e=(num-10000*b-1000*c-100*d)/10;35. printf(5n%d%d%d%d%dna,ed,cJb);36. 37. return0;38. 【设计型】5.6判断某年某月的天数一年有365天,有的月份有31天,有的有30天,2月份闰年的时候是29天,非闰年的时候是28天。现在要求从键盘上输入一个年份和月份,输出其对应的天数。1. .#include2. intmain()3. (4. intyearmonthdays;5. .scanf(%d%d

20、、&year,&month);6. switch(month)7. 9.case 3:10.case 5:11.case 7:12.case 8:13.case 10:14.case 12: days=31;break;15.case 4:16.case 6:17.case 9:18.case 11: days=30;break;19.case 2:20.if(year % 4 =0) & (21.days=29;22.else23.days=28;24. )25. printf(M%dnM,days);26. return 0;27. )8. case 1:% 100 !=0) | (yea

21、r % 400 =0)【设计型】5.7判断输入的字符的类型我们将字符分为五类:大写字母、小写字母、数字、控制字符、其他字符。编写程序,从健盘输入一个字符,输出字符所属的类型:大写字母时输出capitalhtteis,小写字母时输出smallletters,数字是输出比ures,其他字符时输出o由ers。1. .#include2. intmain()3. (4. charch;5. scanf(“%c&ch);6. if(ch=A,&ch=a,&ch=0,&ch=9)11. printf(MfiguresnM);12. else13. .printf(othersnM);14. return0

22、;15. )第6章循环控制结构【设计型】6.1求n的阶乘问题描述:从健盘输入整数n,编程计算并输出n!。输入:整数n输出:n的阶乘输入样例:10输出样例:105=36288001. .#include2. intmain()3. 4. intin;5. longlongy;6. scanf(%dM,&n);7. y=i;8. for(i=n;i=l;i-)9. 10. y=y*i;11. )12. printf(%d!=%lldnJn,y);13. return0;14. )【设计型】6.2输出一行星号问题描述:编写程序在一行中输出N个星号。输入:星号个数值N输出:一行中N个星号1. .#in

23、clude2. intmain()3. (4. intin;5. scanf(%d&n);6. for(i=l;i=n;i+)7. 8. printf(*M);9. )10. printf(n);11. return0;12. )【设计型】6.3编程计算问题描述编写程序,输入n的值,求4+1/5-L6+1/7-.+1治(保留四位小数)输入n的值输出上述算式的求和结果(结果保留四位小数)输入样例1输出样例sum=1.0000时间限制1内存限制额外进程;二1秒64M0|1.#include2. intmain()3. 4. intn,f=l;5. inti=l;6. doublej,sum=0;7

24、. scanf(%d&n);8. while(i=n)9. (10. j=l/(double)i;11. sum+=j*(double)f;12. i+;13. f=-f;14. )15. .printf(Msum=%.41fnM,sum);16. return0;17. )【设计型】6.5最大公约数【输入】两个正整数m和n【输出】m和n的最大公约数和最小公倍数【输入样例】28【输出样例】thegreatestcommondivisoris2thehastcommonmukphis81. #include2. #include3.4. intmain()5. (6. doublen;intx?

25、y,r;7. scanf(M%lf&%&n);8. x=m;9. y=n;10. r=x%y;11. while(r!=0)12. (13. x=y;14. y=r;15. r=x%y;16. 17. printf(thegreatestcommondivisorisy);18. printf(theleastcommonmultipleis%.0fnm*n/y);19. return0;20. 【设计型】6.6水仙花数问题描述输出所有的水仙花数。所谓的水仙花数是指一个3位数,其各位数字立方和等于该数本身。例如153是一水仙花数,因为153=153+33输入无输出所有的水仙花数提示:输出语句1

26、. #include2. #include3. intmain()4. 5. int6. for(x=100;x1000;)7. 8. a=x/100;9. b=(x%100)/10;10. c=x-a*100-10*b;11. if(x=a*a*a+b*b*b+c*c*c)12. printf(M%dnx);13. x+;14. )15. return0;16. 【设计型】6.7素数问题描述输入两个正整数m和n,求出En,n区间的所有素数输入两个整数m和n输出h,n区间的所有素数输入样例210输出样例23571. .#include2. .#include3. intmain(void)4.

27、 5. int6. scanf(%d%d;&%&n);7. if(mn)8. 9. i=m;10. m=n;11. n=i;12. )13. ,for(x=m;x=n;x+)14. (15. y=sqrt(x*1.0);17.18.19.20.21.22.23.24.25.if(x%i=0)break;16. for(i=2;i=y;i+)printf(Mn);return0;26.第8章数组【设计型】8.1挑选小白鼠描述实验室有一批小白鼠,为了评估他们的健康程度,我们为每一只小白鼠都设定了一个“健康指数,现在我们需要进一步的评估这批小白鼠的健康均衡程度,因此我们需要从中找到健康指数差距最大的

28、两只小白鼠的编号,以此来进一步的进行评估。关于输入第一行是一个整数n(2=n=100),表示的是一共有n只小白鼠。第二行是n个整数(互不相同),分别表示n只小白鼠的健康指数,同时根据输入顺序,从1开始为其编号1,2.n。也就是说第一个整数是第一只小白鼠的健康指数,第二个整数是第二只小白鼠的健康指数,依次类推。关于输出输出健康指数差距最大的两只小白鼠的编号。第一个数是健康指数较大的小白鼠的编号,第二个数是健康指数较小的小白鼠的编号。测试输入期待的输出时间限制内存限制额外进测试用例1以文本方式显示1. 10*2. 12345678911,以文本方式显示1.1011秒64M01. #include2

29、. #include3. intmain()4. 5. intn;6. scanf(%d&n);7. inthealth2n;8. int9. for(i=0;in;i+)10. 11. scanf(M%d,&healthli);12. )13. max=healthl0;14. min=healthl0;15. for(i=0;in;i+)16. (17. if(max=healthli)23. 24. min=healthli;25. b=i+l;26. 27. )28. printf(%d%dn,a,b);29. return0;30. 【设计型】8.2统计素数的个数求出2到m之间(含m

30、,m=1000)所有素数并放在数组a中。输入:正整数m输出:从小到大的所有素数,及个数(素数输出的时候用%4d来控制)如:输入:10输出:235741. #include2. #include3#defineza4. intmain()5. (6. int7. scanf(%dM.&a);8. intprimez;9. m=0;10. for(i=l;ia;i+)11. 12. primei=i+l;13. )14. for(i=l;ia;i+)15. 16. d=l;17. for(k=2;k=primei&(d!=0);k+)18. (19. d=primei%k;20. if(d=0&(

31、primei!=0)21. (22. if(k=primei)23. 24. printf(Md,primei);25. m=m+l;26. 27. )28. 29. 30. printf(n);31.32. return0;33.34. )【设计型】8.6在屏幕上显示杨辉三角形杨辉三角形,乂称贾宪三角形,帕斯卡三角形,是二项式系数在三角形中的一种几何排列。其实,中国占代数学家在数学的许多重要领域中处r遥遥领先的地位。中国古代数学史曾经有自己光辉灿烂的篇章,而贾宪三角的发现就是十分精彩的一页。杨辉三角有如下性质:1、每行数字左右对称,由1开始逐渐变大,然后变小,回到1。2、第n行的数字个数为n

32、个。3、每个数字等于上一行的左右两个数字之和。编写程序,输入正数n,将所有数据存储到二维数组中,并在屏幕上显示对应的杨辉三角形触意数据之间的空格)。例如:n=5图形如下:1112113311 4641151010511. #include2. #defineN1003. #defineM1004. intmain()5. 6. intnumberNM;7. scanf(M%d&n);8. for(i=0;i=n;i+)9. 10. for(j=0;j=i;j+)11. (12.13. if(j=0|j=i)14. (15. numberij=l;16. 17. )18. 19. for(i=2;i=n;i+)20. (21. for(j=l;ji;j+)22. (23. .numberij=numberi-1j-l+numberi-lj;24. )25. )26. for(i=0;i=n;i+)27. 28. for(j=0;j=i;j+)29. (30. printf(%3dM,numberij);31. )32. printf(n);33. )34. return0;35. )

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!