c语言编程答案(104页).doc
《c语言编程答案(104页).doc》由会员分享,可在线阅读,更多相关《c语言编程答案(104页).doc(103页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-c语言编程答案-第 103 页c语言编程答案 1-1开始你的第一个C程序成绩: 10 / 折扣: 0.8在屏幕上输出问候语,格式如下:How are you!就是书上第27页的程序,你用任何一种开发工具进行开发。注意格式一定要与给定的格式完全一致,因为是计算机自动比对判断程序运行的结果,它可是个死脑筋,稍有不同就判定是错误的。友情提示:从现在开始,你要尽快学习C语言程序的开发工具,TC、VC都可以。俗话说磨刀不费砍柴工,在这个程序中,你要了解开发环境的基本使用方法:源程序的编辑、保存,程序编译、链接、运行的方法等。1.main() 2. 3. printf("=n");
2、4. printf("How are you!n"); 5. printf("=n"); 6. 1-2照猫画猫:计算圆柱的侧面积及体积成绩: 10 / 折扣: 0.8这是教材P39页的例3-1,体会一下C语言的输入输出函数的用法:输入圆的半径 r ,计算圆的周长和面积 。其中 =3.1416 输入 : 圆的半径 r 输出 :圆的周长c ,面积 是s (均保留 2 位小数)1.#define PI 3.1416 2.main() 3. 4. float r,c,s; 5. scanf("%f",&r); 6. c=2*PI*r;
3、 7. s=PI*r*r; 8. printf("c=%6.2f,s=%6.2fn",c,s); 9. 10. 1-3磨磨你的砍柴刀:判断三角形的形状成绩: 10 / 折扣: 0.8输入三角型的三条边,判断三角形的形状。假设输入的三边边长均 >0 。输入: 三角型的 3 条边的长度( int 型)。 输出: 三角形形状 等边三角形: equilateral triangle. 等腰三角形: isoceles triangle. 不构成三角形: non-triangle. 一般三角形: triangle. 友情提示:这个题有点复杂吧,因为用到了分支语句,你参考一下教材P
4、98的程序。要把a、b、c三条边长度的可能情况都想到。如果程序运行出现了问题,你尝试用开发工具的单步执行调试工具,检查问题出在哪一句。什么叫单步执行?老师在课上告诉你们了吗?没讲过?那就读读网络教室的那些文章吧!1.main() 2. 3. int a,b,c; 4. scanf("%d%d%d",&a,&b,&c); 5. if(a+b>c&b+c>a&a+c>b) 6. if(a=b) 7. if(b=c) printf("equilateral triangle.n"); 8. else p
5、rintf("isoceles triangle.n"); 9. else 10. if(b=c) printf("isoceles triangle.n"); 11. else printf("triangle.n"); 12. else printf("non-triangle.n"); 13. 2-1. 整型数的表示范围成绩: 10 / 折扣: 0.8编写一个循环程序,输入 N 值,输出 N 的阶乘。关于循环程序怎么编写,可以参考教材第六章P123的内容。注意整型数的表示范围,如果当输入的 N 比较大时,例如
6、 N 等于 20 时,输出怎么是负数了?自己想明白吧1.main() 2. 3. int i,n;long s; 4. s=1; 5. i=1; 6. scanf("%d",&n); 7. if(n<13) 8. do s*=i; 9. i+; 10. while(i<=n); 11. printf("%ldn",s); 12. 13. else printf("N is too big!n"); 14. 15. 16. 2-2. 求正弦函数值成绩: 10 / 折扣: 0.8已知求正弦 sin(x) 的近似值的多项
7、式公式为: sin(x) = x - x3/3! + x5/5! - x7/7!+ + (-1)n x2n+1/(2n+1)! + 编写程序,要求输入 x (单位是弧度)和,按上述公式计算 sin(x) 的近似值,要求计算的误差小于给定的。 此题当然要用到循环语句,到第六章去找个猫来照着画吧,循环的终止条件就是本次计算出来的正弦函数值和上次计算的值的差小于给定的。求两个值的差时,要求出其绝对值,使用库函数fabs(),头文件在math.h里。友情提示:给定的误差值越小,计算的精度越高,但是要注意喽,给的精度太高,你的程序会成为死循环。如果出现死循环的情况,可以用<Ctrl>+<
8、;Break>键退出程序。1.#include<math.h> 2.main() 3. double s,x,y,r,m,z,j; 4. int i,n; 5. scanf("%lf%lf",&x,&r); 6. n=i=s=1;y=x;m=x; 7. do 8. m=-m*x*x; 9. do 10. s=s*i;i+; 11. while(i<=2*n+1); 12. n=n+1;z=m/s;y=y+z;j=fabs(z); 13. while(j>r); 14. printf("%fn",y); 15.
9、 2-3. 判断输入的字符的类型成绩: 10 / 折扣: 0.8我们将字符分为五类:大写字母、小写字母、数字、控制字符、其他字符。编写程序,从键盘输入一个字符,输出字符所属的类型:大写字母时输出capital letters, 小写字母时输出small letters,数字是输出figures,控制字符时输出control characters,其他字符时输出 others。1.#include<stdio.h> 2.main() 3. 4. char x; 5. x=getchar(); 6. if(x>='A'&&x<='Z&
10、#39;) printf("capital lettersn"); 7. else if(x>='a'&&x<='z') printf("small lettersn"); 8. else if(x>='0'&&x<='9') printf("figuresn"); 9. else if(x>=0&&x<=32) printf("control charactersn"
11、); 10. else printf("othersn"); 11. 12.3-1. 字符加密输出13.成绩: 10 / 折扣: 0.814.从键盘上输入一个字符,进行加密以后再输出在屏幕上。加密规律是:输入小写英文字母时,输入a 输出Z、输入b输出Y、输入c输出X、.、输入z输出A。输入大写英文字母时,将该字母ASCII码值再加上该值的1/2后输出所对应的字符,例如数字A的ASCII码值是65,加上其值的1/2后是98(小数四舍五入),则输出字符b。输入数字时,将该数字原ASCII码值再加上该值十进制的十位上 的数后输出,例如数字9的ASCII码值是57,加上十位上的数5
12、后是62,则输出字符>。输入其他字符时原样输出。15.16.#include<stdio.h> 17.main() 18. 19. char x;int a,b; 20. x=getchar();a=x/10;b=x%2; 21. if(x>='a'&&x<='z') x=187-x; putchar(x); 22. else if (x>='0'&&x<='9') x=x+a; putchar(x); 23. else if(x>='A
13、9;&&x<='Z') 24. if(b=1) x=x+(x/2+1);putchar(x); 25. else x=x+x/2;putchar(x); 26. 27. else putchar(x); 28. printf("n"); 29. 3-2. 求和成绩: 10 / 折扣: 0.8输入整数 m 和正整数 n ,按下列公式计算 s : s=m-(m+1)+m+2-(m+3)+ +(-1)n(m+n) 。输入: m 和 n 输出: s 1.main() 2. 3. int k,m,n,s,i; 4. scanf("%d%
14、d",&m,&n); 5. s=0;i=0;k=1; 6. while(i<=n) 7. s=s+k*m; 8. m+; 9. i+; 10. k=-k; 11. 12. printf("s=%dn",s); 13. 3-3. 计算时钟的夹角成绩: 10 / 折扣: 0.8背景:钟面上的时针和分针之间的夹角总是在 0 度 359 度之间。举例来说,在十二点的时候两针之间的夹角为 0 度,而在六点的时候夹角为 180 度,在三点的时候为 90 度。本题要解决的是计算 12:00 到 11:59 之间任意一个时间的夹角。输入: 每组测试数据包含两
15、个数字:第一个数字代表小时 ( 大于 0 小于等于 12) ,第二个数字代表分 ( 在区间 0, 59 上 ) 。 输出: 对应每组测试数据,用常用格式显示时间以及这个时候时针和分针间的最小夹角,精确到小数点后一位。输出格式如下所示。输入:12 30输出:At 12:30 the angle is 165.0 degrees.友情提示:以表中心到12点的连线为基准,分针每走1分钟是6度,时针与基准的夹角每个小时也是30度,从整点开始,每过1分钟时针再增加0.5度。 1.#include<math.h> 2.main() 3. 4. int m,n; float s,x; 5. sc
16、anf("%d%d",&m,&n); 6. x=fabs(30*m-5.5*n); 7. if(x< 180) 8. s=x; 9. else s=360-x; 10. if(n<=9) 11. printf("At %d:0%d the angle is %.1f degrees.n",m,n,s); 12. else 13. printf("At %d:%d the angle is %.1f degrees.n",m,n,s); 14. 3-4. 求亲密数成绩: 10 / 折扣: 0.8若正整数的全部
17、约数(包括,不包括本身)之和等于 ; 且整数的全部约数(包括,不包括本身)之和等于,则 A 、 B 为亲密数。编程,输入正整数, 输出亲密数 A , B(A<=B) ,若不存在亲密数,则输出 No output 。例如:220和284就是一对亲密数。220的约数是:1、2、4、5、10、11、20、22、44、55、110,约数之和是284;284的约数是:1、2、4、71、142,约数之和是220。1.main() 2. int a,b=0,i,c=0; 3. scanf("%d",&a); 4. for(i=1;i<=a/2;i+) 5. if(a%
18、i!=0) continue ; 6. b=b+i; 7. 8. if(a<=b) 9. for(i=1;i<=b/2;i+) 10. if(b%i!=0) continue ; 11. c=c+i; 12. 13. 14. if(a=c) printf("%d-%dn",a,b); 15. else printf("No outputn"); 16. return 0; 17. 18. 3-5. 输出一行星号成绩: 5 / 折扣: 0.8在程序中只允许在一个语句中使用printf函数,在printf函数中只允许输出一个星号,编写程序在一行中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 编程 答案 104
限制150内