这个作业属于那个课程 |
C语言程序设计I |
这个作业要求在哪里 |
https://www.cnblogs.com/hoppe/p/11865723.html |
我在这个课程的目标是 |
学会自己编程简单的程序 |
这个作业在那个具体方面帮助我实现目标 |
熟悉使用while和do-while结构解决问题 |
参考文献 |
C语言程序设计、百度百科 |
1.PTA实验作业
1.1 求整数的位数及各位数字之和
题目内容:
对于给定的正整数N,求它的位数及其各位数字之和。
输入格式:
输入在一行中给出一个不超过109的正整数N。
输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。
1.1.1数据处理
数据表达:本题用了int整型结构,N,t,sum为本题目设置的三个变量,用了while循环语句
数据处理:
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 |
输出数据 |
说明 |
123 |
3 6 |
正确 |
456 |
3 15 |
正确 |
1568 |
4 20 |
正确 |
1.1.4 PTA提交列表及说明
运行超时:代码出现错误,在编译器输入数据时没有数据输出
答案错误:输出数据时位数和每位数和的位置搞反了
编译错误:代码行多了一句printf("Enter n:");导致编译错误
1.2 爬动的蠕虫
题目内容:
一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
输入格式:
输入在一行中顺序给出3个正整数N、U、D,其中D<U,N不超过100。
输出格式:
在一行中输出蠕虫爬出井的时间,以分钟为单位。
1.2.1 数据处理
数据表达:用了int整型结构,变量为N、U、D、L,用了while循环语句、if-else分支结构
数据处理:
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 |
输出数据 |
说明 |
4 1 0.5 |
8 |
正确 |
6 1 0.5 |
12 |
正确 |
6 2 0.5 |
8 |
正确 |
1.2.4 PTA提交列表及说明
编译错误:第十三行代码break前面少了一个分号,第二次是因为第十一行if(N<=0)我写的是N<=100还没有完全的理解题目要求
部分正确:输出L时错误,%d中间多了一个空格,N<=100后就最后一个输出的是正确的,其他三个都是错误
2.代码互评
同学的代码:
我的代码:
1.代码变量不同,并且定义时我是都写在了一行,没有分开写。
2.while循环语句的开始条件不同我的是N>0开始循环,而同学的是n!=0时开始进入循环
3.printf输入里的同学多了\n,去掉\n也是对的,对题目没什么影响。
同学的代码:
我的代码:
1.int定义的变量同学的是分开写的,先定义N、U、D、L在定义time,更加清楚所定义的代码的含义
2.if条件语句时设置的条件不同,我的是N<=0开始输出L,同学的是L<N开始进入。
3.我的代码先进入while循环语句,而同学的不同。
3.学习总结
3.1 学习进度条
时间 |
所花时间 |
代码行 |
学到知识点简介 |
目前感到迷惑的 |
第十二周 |
10h |
260 |
while和do-while结构解决问题 |
做PTA时不知道从什么地方下手 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1.这周主要学习了熟悉使用while和do-while结构解决问题,对while、do-while有了一定的了解,通过PTA的练习基本上知道了这两个的用法。
2.PTA上的题目用数学方法知道该怎么做,但是用代码表示就比较困难了,不知道从何处下手,什么时候用上自己所学的,该用在什么地方。
3.通过机课的学习,逐渐熟悉了调试代码,查看代码从哪里出现了错误,但是难一点的还是摸不着头脑。
4.学习了这么久感觉对C语言还是新手一样,迷迷糊糊的。