第六周作业
要求一:
要求二:
题目7-1 高速公路超速处罚
1.实验代码:
#include<stdio.h> int main() { float a,b,x; scanf("%f %f",&a,&b); x=((a-b)/b)*100; if (x<10) { printf("OK");} else if(50<=x) { printf("Exceed %.0f%%. License Revoked",x); } else if(10<=x<50) { printf("Exceed %.0f%%. Ticket 200",x); } return 0; }
2.设计思路:(1)第一步:引入车速和限速两个变量a,b,以及关于超速的变量x;
第二步:输入车速和限速两个值;
第三步:判断x的大小,并根据题意来判断输出条件;
第四步:输出结果;
(2)流程图:
3.本题调试过程碰到的问题及解决办法:本题因为上周作业有过训练所以没什么问题。
4.本题PTA提交列表:
题目7-2 计算油费
1.实验代码:
#include<stdio.h> int main() { int a,b; char c; double d,p1,p2; d=0; scanf("%d %d %c",&a,&b,&c); switch(b) { case 90:p1=6.95;break; case 93:p1=7.44;break; case 97:p1=7.93;break; } switch(c) { case 'm':p2=0.95;break; case 'e':p2=0.97;break; } d=p1*p2*a; printf("%.2f",d); return 0; }
2.设计思路:(1)第一步:引入分别表示加油量以及汽油品种的变量a,b以及服务类型c,以及应付款d和不同类型下的油价及折扣p1,p2;
第二步:由题意可设置两个switch,分别来确定在不同条件下的油价及折扣;
第三步:输入变量a,b,c的值;
第四步:输出结果;
(2)流程图:
3.本题调试过程碰到的问题及解决办法:
碰到的问题:①一开始对这个题的变量定义的函数出现了错误,导致在提交作业的时候总是出现提交部分正确的情况。
解决办法:①起初我只是简单的认为自己是还不熟悉用“switch”函数,以为自己是函数用错,于是就用“if”函数又重新敲了一遍代码。可是最后还是发现出现了同样的错误,于是,我就去班级群里请教老师,同是也发现有很多和我出现相同问题的同学,最后由我们大家一起解决了这个问题,最后只是把“float”改成了“double”因为若用“float”在运行的时候有的结果会出现偏差。
4.本题PTA提交列表:
题目7-3 比较大小
1.实验代码:
#include<stdio.h> int main() { int a,b,c; scanf("%d %d %d",&a,&b,&c); if(a>b&&a>c&&b>c) { printf("%d->%d->%d",c,b,a); }else if(a>b&&a>c&&c>b) { printf("%d->%d->%d",b,c,a); }else if(b>a&&b>c&&a>c) { printf("%d->%d->%d",c,a,b); }else if(b>a&&b>c&&c>a) { printf("%d->%d->%d",a,c,b); }else if(c>a&&c>b&&a>b) { printf("%d->%d->%d",b,a,c); }else if(c>=a&&c>=b&&b>=a) { printf("%d->%d->%d",a,b,c); } return 0; }
2.设计思路:(1)第一步:引入三个变量a,b,c;
第二步:根据题意利用“if”函数写出框架;
第三步:输入变量a,b,c的值;
第四步:输出结果;
(2)流程图:
3.本题调试过程碰到问题及解决办法:
碰到的问题:①本题自我感觉较为简单,但是在自己实际敲代码的时候在上交作业的时候出现错误,是我自己没有考虑a,b,c三者全等的情况;
解决方法:②自己先是考虑了一下,但是仍很是糊涂,于是就去请教了室友,之后发现,只要在这个选择条件中随意一个条件加上“=”号就可以解决。
4.本题PTA提交列表:
题目7-4 两个数的简单计算器
1.实验代码:
#include<stdio.h> int main() { char a; int b,c,d; scanf("%d %c %d",&b,&a,&c); switch(a) { case'+':d=b+c;printf("%d",d);break; case'-':d=b-c;printf("%d",d);break; case'*':d=b*c;printf("%d",d);break; case'/':d=b/c;printf("%d",d);break; case'%':d=b%c;printf("%d",d);break; default:printf("ERROR");break; } return 0; }
2.设计思路:(1)第一步:引入三个整数变量b,c,d代表两个所计算的数以及计算结果数,并引 入字符变量来代表所用到的运算符号;
第二步:根据题意,进行字符与整数之间的运算;
第三步:输入运算两个整数;
第四步:输出结果;
(2)流程图:
3.本题调试过程碰到问题及解决办法:
碰到的问题:①一开始忘了怎么引用字符函数“char”,不知道怎么表示字符;
②“char”函数中的字符引用一开始不知道在引用字符的时候要加单引号' ';
解决办法:①对于在使用函数的问题,一开始我是先查了一下课本,之后只是懂 得了怎么引用函数,但怎么懂使用,之后又请教了一下同学,之后 就会使用这个函数,但还是有些不熟悉,还需要勤加练习;
②对于加单引号的问题,我是去网上查的之后,才知道的;
4.本题PTA提交列表:
要求三:
Git提交截图:
Git地址:https://git.coding.net/GBL/ZY.git
要求四
个人总结:(1)①本周我学习了很多语句:“switch”语句、“for”语句;
②本周我还学习了“if”加强练习;
(2)难点:①对于由流程图转换成代码对我来说还很难;
②对由题目转换成循环或者转换成计算机所能接受的能力还很欠缺;
③对循环嵌套的运用很乱,不熟悉;
不明白的知识点:①对“break”和“continue”的区别还是迷惑;
(3)对目前的老师的上课形式我没啥意见;
要求五:
1.点评3个同学的本周作业:丰大为http://www.cnblogs.com/DavidPark/p/7800637.html
班庆泽http://www.cnblogs.com/wsbqz/p/7822875.html
顾家玮http://www.cnblogs.com/qq807443119/p/7822529.html
邀请3名同学点评我的作业:丰大为http://www.cnblogs.com/DavidPark/p/7800637.html
顾家玮http://www.cnblogs.com/qq807443119/p/7822529.html
班庆泽http://www.cnblogs.com/wsbqz/p/7822875.html
2.表格:
折线图: