一、PTA作业
题目7-1 高速公路超速处罚
1.实验代码
#include <stdio.h> int main() { int a,b; double c; scanf("%d %d",&a,&b); c=(double)(a-b)*100/(double)b; if(c<10||a<b) printf("OK"); else if(c<50) printf("Exceed %.0f%%. Ticket 200",c); else printf("Exceed %.0f%%. License Revoked",c); return 0; }
2 设计思路
(1)文字描述
第一步:理解题意 把情况分类讨论:1 正常情况下或车速小于10%*限速 2 超速10%~50%之间罚款200元 3 超速50%及50%以上吊销驾驶证
第二步:打出框架 定义 并将三类情况分别用if else 等语句列出
第三步:编译运行,错误修改。
(2)流程图
3.本题调试过程碰到问题及解决办法
错误提示的截图
问题及解决办法:输出百分号后不知道打什么,后来百度得解决。知%%是指输出一个百分号,然后粗心大意输出逗号后的变量打错了。问题已经解决。
4.本题PTA提交列表
错误提示解释说明:
前面是百分号和变量出错,doubt打错一个字母,最后一次部分出错是由于少打了一个单词。
题目7-2 计算邮费
1.实验代码
#include <stdio.h> int main () { int a,b; char x; double y; scanf("%d %d %c",&a,&b,&x); switch(b) { case 90: y=a*6.95;break; case 93: y=a*7.44;break; case 97: y=a*7.93;break; default: break; } if(x=='m') y=y*0.95; if(x=='e') y=y*0.97; printf("%.2f",y); return 0; }
2 设计思路
1)文字描述
第一步:理解题意 设出单位a,型号b,服务类别x以及花费y
第二步:打出框架 分类讨论 运用分步法进行排列组合
第三步:编译运行,错误修正
(2)流程图
3.本题调试过程碰到问题及解决办法
错误提示的截图
问题及解决办法:在本题中,我发现了我有一个很重大的问题,就是写代码是,会把自己定义的变量忘记了,比如我定义的是x,y,写到一半却认为是c,t,结果导致了很多不必要的,麻烦。其次原先没有打default:break;是在看别人打后自己百度得知,该语句意思为没有case中的情况则如此执行。
4.本题PTA提交列表
题目7-3 比较大小
1.实验代码
#include <stdio.h> int main () { int a,b,c,d; scanf("%d %d %d",&a,&b,&c); if(a>b){ d=a; a=b; b=d;} if(a>c){ d=a; a=c; c=d;} if(b>c){ d=b; b=c; c=d;} printf("%d->%d->%d",a,b,c); return 0; }
2 设计思路
1)文字描述
第一步:理解题目,寻找一个媒介,作为替换的中间函数值
第二步:三个变量分批进行替换,使小的数向前移动
第三步:编译运行,修正错误
(2)流程图
3.本题调试过程碰到问题及解决办法
错误提示的截图
问题及解决办法:由于这题上课做过不止一次,所以没有出现问题
4.本题PTA提交列表
题目7-4 两个数的简单计算器
1.实验代码
#include <stdio.h> int main(){ int a,b; char operate; scanf("%d %c %d",&a,&operate,&b); switch(operate) { case '+':printf("%d",a+b);break; case '-':printf("%d",a-b);break; case '*':printf("%d",a*b);break; case '/':printf("%d",a/b);break; case '%':printf("%d",a%b);break; default: printf("ERROR"); } return 0; }
2 设计思路
1)文字描述
第一步:理解题意,一开始蒙了,没理解明白,后来看了一下同学的
第二步:分类讨论,表示出多种情况
第三步:编译运行,修正错误
(2)流程图
3.本题调试过程碰到问题及解决办法
错误提示的截图
问题及解决办法:一开始是第一次对了,然后发现忘记b!=0了,修改了一直出现错误,目前问题没有解决,最后改回原来的方法。
4.本题PTA提交列表
要求三
地址:https://git.coding.net/ycx1165012154/test.git
表格:
代码行数 | 时间 | 博客字数 | 时间 | |
11.05 | 0 | 0 | 0 | 0 |
11.06 | 0 | 0 | 0 | 0 |
11.07 | 200 | 180min | 700 | 150min |
折线图:
注:一天完成。
要求四
个人总结
(1)本周你学习了哪些内容?收获了什么?
答;本周复习了 if else,纠正了流程图中的问题 ,学习了switch结构,初步了解了循环结构
(2)本周所学内容中你觉得哪些是难点?有哪些知识点还不明白?
答:我认为制作流程图是难点,流程图画不明白,比如switch
(3)你对目前老师的上课形式有什么意见或建议?
我觉得我们敲代码前老师可以先示范一遍或者是课上我们先做一遍,有个先入为主的印象,这样课后不会花太多时间纠结。