欢迎来到天天文库
浏览记录
ID:17441997
大小:31.00 KB
页数:3页
时间:2018-08-31
《山东科技大学ojt题之摄氏——华氏温度转换表》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、摄氏——华氏温度转换表TimeLimit:1Sec MemoryLimit:2MBSubmit:1101 Solved:326[Submit][Status][WebBoard]Description已知华氏温度F,转换为摄氏温度C的公式为C=(F-32)*5/9。输出给定范围(从low到high)和步长(step)的摄氏——华氏温度转换表Input第1行若为“C->F”表示输出:摄氏——华氏温度转换表,若为“F->C”表示输出:华氏——摄氏温度转换表。第2、3行为两个整数:high和low,其值在-100到200之
2、间。第4行为step,step精确到小数点后1位。Output输出第一行为C和F,分别表示摄氏和华氏,与小数点对齐。若输出摄氏——华氏温度转换表,则C在前、F在后;反之,则输出华氏——摄氏温度转换表。从输出的第2行开始为从温度low到温度high(包括low和high)的转换表,温度输出精确到小数点后1位,表格被“->”分为两个宽度相同的部分,其它的测试样例也不会给出超出宽度的数据,格式详见sample。SampleInputC->F-10402.5SampleOutputC->F-10.0->14.0-7.5->18.
3、5-5.0->23.0-2.5->27.50.0->32.02.5->36.55.0->41.07.5->45.510.0->50.012.5->54.515.0->59.017.5->63.520.0->68.022.5->72.525.0->77.027.5->81.530.0->86.032.5->90.535.0->95.037.5->99.540.0->104.0HINT输出格式可以通过sample分析出来,因为两栏的总宽度是固定的。一个隐藏的陷阱是step是浮点数,某些浮点数是无法精确存储的,因此经过一定量的
4、计算后这个误差会影响到浮点数的相等性判断,需要加上精度控制。AppendCode#includeintmain(){ doublea,b,c,C,F,i; chard,g; scanf("%c->%c",&d,&g); if(d=='C'&&g=='F') { scanf("%lf%lf%lf",&a,&b,&c); printf(" C -> F"); for(i=a;i<=b+0.01;i=i+c) {F=i*9/5+32;
5、 printf("%5.1lf->%5.1lf",i,F); } } else { scanf("%lf%lf%lf",&a,&b,&c); printf(" F -> C"); for(i=a;i<=b+0.01;i=i+c) {C=(i-32)*5/9; printf("%5.1lf->%5.1lf",i,C); } } return0;}
此文档下载收益归作者所有