作业要求 :https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2293
前言
来到大学已经一个多月了,通过这近两个月的C语言的学习,感觉自己仿佛已经触碰到了代码世界的一隅,从“hello world”到“for的循环”,脑子里的代码数也慢慢丰富起来,C语言的乐趣也迈着轻悦的步伐缓缓
靠近着我,希望在接下来的学习里,能够继续有所收获。
作业
第三周作业
这一周的作业可以说是我们接触的第一个稍有难度的作业了,无论从数量还是质量看都是。而其中最让我头疼的就是《7-7 计算火车运行时间》了。
这道题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。
刚开始看这道题的时候一头雾水,完全不知道该怎么操作,后来在同学的指导下终于有了思路。
这道题主要的难点就是小时上的借位和分钟与小时的转换。
代码:
1 #include <stdio.h> 2 int main() 3 { 4 int abcd,qwer,xy,mn; 5 scanf("%d %d",&abcd,&qwer); 6 7 xy=qwer/100-abcd/100; 8 mn=qwer%100-abcd%100; 9 10 if(mn<0) 11 { 12 mn=60+mn; 13 xy=xy-1; 14 } 15 16 printf("%02d:%02d",xy,mn); 17 18 return 0; 19 20 }
思路:
1 定义两个输入变量abcd和qwer;
2 定义两个输出变量mn和xy;
3 通过abcd和qwer除以一百来完成初步的小时化并通过相减来计算消耗的时间;
4 通过if语句来完成小时的结位从而达到完全的小时化;
5 由于小时或分钟可能出现类似于2.30之类的情况,于是用%02d来进行0的补位,从而实现02.30的情况。
流程图:
结果:
错误情况:
没有进行小时和分钟的补0处理导致答案错误。
调试时:
经过调试,把问题解决了。
第四周作业
第四周的作业总体来说难度偏大,但有个别题目却也十分有趣,而最让我感兴趣的就是《7-2 高速公路超速处罚》了。
这道题要求根据车速和限速自动判别对该机动车的处理。
达到或超出本车道限速的10%则处200元罚款;若达到或超出50%,就要吊销驾驶证。
这道题主要的难度就是如何输出百分号和如何计算限速的百分之几。
代码:
1 #include <stdio.h> 2 int main() 3 { 4 double d; 5 double a,b,c; 6 scanf("%lf %lf",&a,&b); 7 c=a-b; 8 d=(c/b)*100; 9 if(d<10) 10 { 11 printf("OK"); 12 } 13 else if(d<50) 14 { 15 printf("Exceed %.0f%%. Ticket 200",d); 16 } 17 else 18 { 19 printf("Exceed %.0f%%. License Revoked",d); 20 } 21 22 return 0; 23 }
思路:
1 定义四个变量a,b,c,d;
2 输入车速a,限速b,并通过相减算出差值c,再通过c与b的相除计算出差值是限速的百分之几,即超出限速的百分之几;
3 通过if语句进行判断,实现不同的处理;
4 在输出时百分号用%%来表示。
流程图:
结果:
错误情况:
没有弄清楚百分号如何表示,导致输出时未显示百分号。
调试时:
经过调试之后,问题得到解决。
总结和学习进度条
通过这几周的学习,可以说已经打开了通往代码世界的大门,当然中间遇到了很多的问题,也产生了很多不适当的情绪。但幸运的是,我都克服了,希望在下面的学习中可以再接再厉,继续努力学习,向着代码世界更进一步。
点评
1 张春宇 http://www.cnblogs.com/zcybky/p/9853307.html
2 莫有江 http://www.cnblogs.com/moyoujiang/p/9892524.html
3 王嘉聪 http://www.cnblogs.com/asdwadsxc/p/9892297.html