《C语言顺序结构及分支结构编程案例(详解).doc》由会员分享,可在线阅读,更多相关《C语言顺序结构及分支结构编程案例(详解).doc(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-作者xxxx-日期xxxxC语言顺序结构及分支结构编程案例(详解)【精品文档】顺序结构入门及熟悉环境1、输出Good Morining 答案:#includeint main() printf(Good Moriningn);return 0;2、已知某种铅密度为11340kg/m3 ,求厘米铅球有多少kg这里要求 :pi的取值为,小数用double表示,printf(%lf输出)输入格式 :输入格式 : 仅仅一个小数输出格式 :无输出样例 :答案:#include #define midu 11340int main()double r = 0.049;double v ;double w
2、eigh;v = 4.0/3*3.141592657*r*r*r;weigh = v * midu;printf(%lf, weigh);3、两个数相加输入两个整数输出两个整数的和比如输入 :1 4输出 :5答案:#include void main()int a,b;int sum;scanf(%d%d,&a,&b);sum = a+b;printf(%dn,sum);4、输入两个整数a,b,计算(a-b)*(a+b)比如输入 : 1 4输出 :-15答案:#include void main()int a,b;int sum;scanf(%d%d,&a,&b);sum = (a-b)*(a
3、+b);printf(%dn,sum);5、两个数相加后乘以5输入 :两个整数输出 :两个整数的和乘以5比如输入 : 1 4 输出 :25答案:#include void main()int a,b;int sum;scanf(%d%d,&a,&b);sum = (a+b)*5;printf(%dn,sum);6、已知某种铅密度为11340kg/m3 ,求输入球的直径(厘米数),求铅球有多少kg。输入格式 :输入格式 : 仅仅一个小数输出格式 :输出格式 :仅仅一个小数输入样例 :输入样例 :输出样例 :输出样例 :答案:#include #define midu 11340void main
4、 ()double r;scanf(%lf,&r);double v ,m;v=4.0/3*3.141592657*(r/200)*(r/200)*(r/200);m=v*midu;printf(%lf,m);7、铅密度为11340kg/m3 ,输入外直径(cm),内径(cm),求空心球有多kg?输入格式 :输入格式 :两个小数(空格分隔)输出格式 :输出格式 :一个小数输入样例 ;输入样例 :输出样例 :输出样例 :答案:#include int main()double R,r;int p;p=11340;scanf(%lf %lf,&R,&r);double M,m;M=p*4.0/3*
5、pi*R/2*0.01*R/2*0.01*R/2*0.01;m=p*4.0/3*pi*r/2*0.01*r/2*0.01*r/2*0.01;printf(%lfn,M-m);return 0;8、输入一个华氏温度,要求输出摄氏温度。公式为 c=5(F-32)/9 输出要求有文字说明,取位2小数。输入 :一个华氏温度,浮点数输出 :c=摄氏温度,(保留两位小数)输入样例:-40输出样例 :答案:#include void main()double c,f;scanf(%lf,&f);c = 5*(f-32)/9;printf(c=%0.2lfn,c);9、从1到9任选一个你喜欢的数字,先乘以3,
6、再加上3,再乘以3,最后把个位数和十位数相加,得到结果是什么?输入: 3结果:9答案:#include void main()int a,b,c,d,e;scanf(%d,&a);b=(a*3)+3)*3;c=b/10;d=b%10;e=c+d;printf(%d,e);10、输入三个数a,b,c,表示三角形的三个边长输出三角形面积的平方值,结果保留2位小数p(p-a)(p-b)(p-c), 其中p=( a + b + c)/2;例如,输入 :输出 :注意 :printf(%.2lf,double) 保留2位小数答案:#include void main()double a,b,c,p,s;s
7、canf(%lf %lf %lf,&a,&b,&c); p=( a + b + c)/2; s=p*(p-a)*(p-b)*(p-c);printf(%.2lf,s);11、求一元二次方程ax2+bx+c=0的解。a,b,c为任意实数。 输入 :输入数据有一行,包括a b c的值输出 :(保留2位小数)x1 x2实根,且要求x1=x2输出提示 :计算平方根用sqrt()函数,例如 y=sqrt(x) 则y就得到x的平方根例如输入:输出 :答案:#include #include void main()double a,b,c,x,d;double x1,x2; scanf(%lf %lf %l
8、f,&a,&b,&c);d=sqrt(b*b-4*a*c);x1=(-b+d)/(2*a);x2=(-b-d)/(2*a);if(x1=x2)printf(%.2lf %.2lf,x1,x2);elseprintf(%.2lf %.2lf,x2,x1);12、输出一个三位数,将它反向输出。如输入 :127输出: 721提示:需要求出这个数的个、十、百位上的数字用到的技巧就是,整数相除还是整数的办法,比如235/100就等于2答案:#includeint main()int a,b,c,d,e;scanf(%d,&a);b=a/100;c=(a/10)-b*10;d=a%10;e=d*100+c
9、*10+b;printf(%dn,e);分支结构 13、输入3个整数,判断第一个数是不是最大的数? 例如,输入 :3 4 5输出 :0输入 :6 1 2输出 :1答案一:#includevoid main()int a,b,c;scanf(%d %d %d,&a,&b,&c);if(ab&ac)printf(1);elseprintf(0);答案二:#includevoid main()int a,b,c;scanf(%d %d %d,&a,&b,&c);if(ab)printf(0n);elseif(ac)printf(0n);elseprintf(1n);14、输入两个实数,按由小到大的次
10、序输出两数输入两个单精度的实数,例如:输出结果为从大到小排序,例如:输出结果保留小数点后两位答案:#include int main()double a,b;scanf(%lf %lf,&a,&b);if (ab)printf(%0.2lf %0.2lfn,a,b);elseprintf(%0.2lf %0.2lfn,b,a);return 0;15、输入两个整数,判断其是否相等。例如:1)输入:3 5输出:a!=b2) 输入:4 4输出:a=b答案:#includevoid main()int a,b;scanf(%d %d,&a,&b);if(a=b)printf(a=b);elsepri
11、ntf(a!=b);16、编写一个程序,输入a、b两个,输出其中最大值。输入 :两个小数输出 :a b 其中最大的数 保留2位小数输入样例 :10.2 输出样例 :答案:#include void main()double a,b;scanf(%lf %lf,&a,&b);if(ab)printf(%.2lf,a);elseprintf(%.2lf,b);17、编写一个程序,输入a、b、c三个值,输出其中最大值。输入 :一行数组,分别为a b c输出 :a b c其中最大的数 保留2位小数输入样例 :10 20 30输出样例 :答案一:#include void main()double a,
12、b,c;scanf(%lf %lf %lf,&a,&b,&c);if(ab&ac)printf(%.2lfn,a);else if(ba&bc)printf(%.2lfn,b);elseprintf(%.2lfn,c);答案二:#include void main()int a,b,c;double d,e;scanf(%d %d %d,&a,&b,&c);d=a*1.0b*1.0?a*1.0:b*1.0;e=d*1.0c*1.0?d*1.0:c*1.0;printf(%.2lf,e);18、输入一个年份,判断一个年份是否为闰年输入 :一个正整数,比如 2008输出 :一个字母 “y” 或者
13、“n” (引号不输出)输入样例 :2008输出样例 :y答案一:#include void main()int a;scanf(%d,&a);if (a%4=0&a%100!=0|a%400=0)printf(y);else printf(n);答案二:#include void main() int n;scanf(%d,&n);if(n%100=0)if(n%400=0)printf(yn);elseprintf(nn);else if (n%4=0)printf(yn);elseprintf(nn);19、简单的计算器计算:输入a+b能计算出其和,输入a-b能计算其差,同理乘除。除法用/
14、表示,但是若出现4/0则输出“error”,建议使用数据类型使用float类型,“ + - * / ” 使用char。输出格式%.2f输入 :1 + 2输出 :输入 :1/0输出 :errorHINT:float a; char b; float c; scanf(%f%c%f,&a,&b,&c);答案一:#includevoid main()float a,b;char op;scanf(%f %c %f,&a,&op,&b);switch(op)case +:printf(%.2f,a+b);break;case -:printf(%.2f,a-b);break;case *:printf
15、(%.2f,a*b);break;case /:if(b!=0)printf(%.2f,a/b);elseprintf(error);break;default:printf();答案二:#include void main()double a,c,d;char b; scanf(%lf%c%lf,&a,&b,&c);if ( b=+)d=a*1.0+c*1.0;printf(%.2lf,d);else if ( b=-)d=a*1.0-c*1.0;printf(%.2lf,d);else if ( b =*)d=a*1.0*c*1.0;printf(%.2lf,d); else if ( b
16、=/&c!=0)d=a*1.0/c*1.0;printf(%.2lf,d);else if ( b=/&c=0)printf(error);20、看看你们的缘分!计算出你和另一个人的关系,准的邪门了!计算的方法很简单,将你们姓名笔划的总数作比较,以大的数字减小的例如:大雄想知道自己和叮当的关系是什,要将自己名字的笔划(共15划)和叮当名字的笔划(共21划)相减(即21-15),得出的数字是6,帮你的人。 十分准确啊!快来试试吧!差值对照表:0 亲密无间1 永远和你在一起2 水火不相容3 知心朋友4 心上人5 帮你做事的人6 帮你的人7 面和心不合8 男女关系不正常9 情投意合10 关系马虎11
17、 尊敬你的人12 爱你的人13 适合你的14 说你坏话的人15 克星16 救星17 忠心的人18 狼心狗肺的人19 单相思20 山盟海誓21 情敌22 服从你的人23 永远在一起24 伴终生25 恨你又爱你 比25大:你俩缘分超出计算范围答案:#include void main()int a,b,c,d,e;scanf(%d %d,&a,&b);c=ab?a:b;d=a=x2输出。(2)如果方程是共轭复根,x1=m+ni,x2=m-ni,其中n0。其中x1, x2, m,n均保留2位小数。样例输入 :1 2 3样例输出 :-1.00+1.41i -1.00-1.41i 提示 :两个根中间有一
18、个空格平方根用函数sqrt(x) ,并同时需要#include 保留2位小数用printf(%.2f,.) 输出i的方法 printf(%0.2lf+%0.2lfi %0.2lf-%0.2lfi,你的实部,你的虚部,你的实部,你的虚部)答案:#include #include void main()int a , b , c;/定义方程的三个参数/double p , m , n , x1 , x2 , x , y;/定义实根和虚根以及b2-4ac的值 以及用于交换最大最小值的x,y/scanf(%d %d %d,&a,&b,&c);p = (b*b-4*a*c)*1.0;if (a=0&b=
19、0)printf(Not an equation);else if (a=0&b!=0)x1=(c*1.0/b*1.0)*(-1);printf(%.2lf,x1);else if (a!=0) if (p=0) x1 = (-b+sqrt(p)/(2*a)*1.0;x2 = (-b-sqrt(p)/(2*a)*1.0;x = x1x2?x1:x2;y = x1x2?x1:x2;printf(%.2lf %.2lf,x,y); else m = (-b*1.0)/(2*a*1.0);n = sqrt(-p)*1.0/(2*a*1.0); if (n0)n=-n;printf(%.2lf+%.2
20、lfi %.2lf-%.2lfi,m,n,m,n); 22、实现符号函数求解。输入变量为大于0的实数时,输出 1输入变量为小于0的实数时,输出 -1输入变量为0时,输出 0答案:#includevoid main()int a;scanf(%d,&a);if(a0)printf(1);else if(a=0)printf(0); elseprintf(-1);23、输入一个双精度类型的分数,判断该分数属于哪个等级,1)如果输入的分数不在0-100之间,输出 :error!2)输入分数大于等于90,小于等于100,输出:A3)输入分数大于等于80,小于90,输出:B4)输入分数大于等于70,小于
21、80,输出:C5)输入分数大于等于60,小于70,输出:D6)输入分数小于60,输出:E答案:#includevoid main()float score;scanf(%f,&score);if(score100) printf(error!);else if(score=0&score60) printf(E);else if(score70) printf(D);else if(score80) printf(C);else if(score90) printf(B);else printf(A);24、输入三个整数,按照由小到大顺序输出出来。例如 :输入 :12 5 8输出 :5 8 1
22、2答案一:#include void main()int a,b,c,d,e,f,g,h;scanf(%d %d %d,&a,&b,&c); d=ab?a:b;e=db?a:b;g=fc?f:c; if (ae&ae&bg)h=b;printf(%d %d %d,e,h,g);else printf(%d %d %d,e,c,g);答案二:#include int main()int a,b,c;scanf(%d %d %d,&a,&b,&c);if(a!=b&a!=c&b!=c) if(ab&bc)printf(%d %d %dn,c,b,a); else if (ac&cb)printf(
23、%d %d %dn,b,c,a); else if (ba&ac)printf(%d %d %dn,c,a,b); else if (bc&ca)printf(%d %d %dn,a,c,b); else if (ca&ab)printf(%d %d %dn,b,a,c); else if (cb&ba)printf(%d %d %dn,a,b,c);else printf(%d %d %dn,a,b,c);return 0;25、输入112,对应:Jan,Feb, Mar, Apr, May, Jun,Jul,Aug,Sep,Oct,Nov, Dec , 如果不是上述内容,则输出error!
24、例如:1)输入 :3输出 : Mar2)输入 :13输出 :error!答案:#include void main()int m;scanf(%d,&m);switch(m)case 1:printf(Jan);break;case 2:printf(Feb);break; case 3:printf(Mar);break;case 4:printf(Apr);break;case 5:printf(May);break;case 6:printf(Jun);break;case 7:printf(Jul);break;case 8:printf(Aug);break;case 9:printf(Sep);break;case 10:printf(Oct);break;case 11:printf(Nov);break;case 12:printf(Dec);break;default:printf(error!); 【精品文档】