标签:float 符号 注意事项 oat 百分比 答案 include ref 等等
题目7-1 高速公路超速处罚
1.实验代码
1 #include<stdio.h> 2 int main() 3 { 4 int car,x; 5 float percent; 6 char ch=‘%‘; 7 scanf("%d %d",&car,&x); 8 if(car<0||x<=0)printf("the input is error"); 9 else if(car<x*1.1f)printf("OK"); 10 else if(car<x*1.5f){ 11 percent=(car-x)*100.0f/x; 12 printf("Exceed %.0f%c. Ticket 200",percent,ch);} 13 else{ 14 percent=(car-x)*100.0f/x; 15 printf("Exceed %.0f%c. License Revoked",percent,ch);} 16 return 0; 17 }
2.设计思路
(1)主思路
注解:本题细节问题要注意整数与浮点数的转换和超速范围的开闭区间。
(2)流程图
3.本题调试过程碰到问题及解决办法
printf函数中的%显示不出来导致PTA部分错误。
解决办法就是定义一个字符型定量ch=‘%’代替printf函数中原本的%符号。
4.本题PTA提交列表
部分错误即为上述遇到的问题。
题目7-2 计算油费
1.实验代码
1 #include<stdio.h> 2 int main() 3 { 4 int a,b; 5 char c; 6 double money; 7 scanf("%d %d %c",&a,&b,&c); 8 switch(b) 9 { case 90:money=6.95*a;break; 10 case 93:money=7.44*a;break; 11 case 97:money=7.93*a;break; 12 } 13 if(c==‘m‘) 14 money=money*0.95; 15 else 16 money=money*0.97; 17 printf("%.2lf",money); 18 return 0; 19 }
2.设计思路
(1)主思路
注解:本题细节问题要注意整数与浮点数的转换和结果应保留两位小数。
(2)流程图
3.本题调试过程碰到问题及解决办法
用if函数判断字符变量时没有用单引号括中,导致编程错误。
解决办法就是用单引号括中m,即。
4.本题PTA提交列表
第一个部分正确是由于浮点型变量用的float定义导致错误;
第二个部分正确是修改时程序时粗心顺手删掉了if函数中的符号导致错误。
题目7-3 比较大小
1.实验代码
1 #include<stdio.h> 2 int main() 3 { 4 int a,b,c,x; 5 scanf("%d %d %d",&a,&b,&c); 6 if(a<b){ 7 x=a; 8 a=b; 9 b=x;} 10 if(a<c){ 11 x=a; 12 a=c; 13 c=x;} 14 if(b<c){ 15 x=b; 16 b=c; 17 c=x;} 18 printf("%d->%d->%d",c,b,a); 19 return 0; 20 }
2.设计思路
(1)主思路
注解:重点在于三个数字分别比较大小并按预定结果进行赋值交换,以及最终结果其间以“->”相连。
(2)流程图
3.本题调试过程碰到问题及解决办法
本题为课堂练习固没有错误,但是在具体编程进行数字交换时比较容易弄混。
4.本题PTA提交列表
题目7-4 两个数的简单计算器
1.实验代码
1 #include<stdio.h> 2 int main() 3 { 4 int a,b; 5 char ch; 6 scanf("%d %c %d",&a,&ch,&b); 7 switch(ch){ 8 case ‘+‘:printf("%d",a+b);break; 9 case ‘-‘:printf("%d",a-b);break; 10 case ‘*‘:printf("%d",a*b);break; 11 case ‘/‘:printf("%d",a/b);break; 12 case ‘%‘:printf("%d",a%b);break; 13 default:printf("ERROR");} 14 return 0; 15 }
2.设计思路
(1)主思路
注解:本题主要注意switch语句的格式规范以及输入输出的格式。
(2)流程图
3.本题调试过程碰到问题及解决办法
scanf函数读入格式用“,”间隔导致PTA错误。
将格式按题目要求改为空格间隔即可。
4.本题PTA提交列表
答案错误为scanf函数中忘记打入&符号导致错误;
部分正确为上述错误(即scanf函数读入用“,”间隔)。
上传成功后coding.net项目的截图
Git地址:https://git.coding.net/cyq1076926262/NO.4.git
个人总结
(1)本周所学内容或收获:
①巩固了switch循环语句的用法并规范其流程图画法(附课本例图);
②学习了while循环语句及do while结构;
③自学了for语句的用法;
④自学了pow函数的用法(用于C题库第8题,以下百度搜索注意事项)。
(2)本周做学难点与不明白的知识点
我认为的难点:
①循环语句的运用;
②面对较复杂题目编程时如何精简逻辑。
不明白知识点:
没有未明白的知识点,只是新学习的循环语句还未熟练使用。
(3)对目前老师的上课形式有什么意见或建议:
希望将来专业课程的学习能更加注重编程问题。相比于花费更多时间做博客,我更愿意平衡一下时间去做C题库,因为通过本周C题库的做题,我更愿意也更有动力为了解题去学习新的语法、函数等等。当然关于博客的流程图我觉得还是挺有意义的,很有助于整理思路,无论是题前题后。
1.点评作业
①何宗彦(http://www.cnblogs.com/hezongyan/)(1、14楼)
②胡俊鲜(http://www.cnblogs.com/123456hjx/)(3楼)
③陈盈驰(http://www.cnblogs.com/1999-cyc/)(1楼)
2.学习进度条(11/5 8:00~11/8 8:00)
标签:float 符号 注意事项 oat 百分比 答案 include ref 等等
原文地址:http://www.cnblogs.com/cyq66992152/p/7789995.html