C语言I作业07:第十二周作业

这个作业属于那个课程C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/9981
我在这个课程的目标是 熟练掌握循环结构while,do-while的用法
这个作业在那个具体方面帮助我实现目标 自我思考,以及完成作业的时候
参考文献 百度

 

 

 

 

 

 

 

 

 

 

 

 

 

1.PTA实验作业

 

 

1.1求整数的位数及各位数字之和 

对于给定的正整数N,求它的位数及其各位数字之和。
输入格式:
输入在一行中给出一个不超过10⁹​​的正整数N。
输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。
输入样例:
321
输出样例:
3 6

1.1.1数据处理

数据表达:定义了3个整型变量分别是:N,sum,k。其中N为输入值,k用来输出位数,num计算各数字和。

数据处理:

star

scanf("%d",&N);

while(N=0的时候跳出循环)
{
  sum=sum+N除10的余数;
  N/10;为下次循环做准备
   k自增
}

输出k,sum

end

1.1.2实验代码截图

 

 1.1.3 造测试数

输入数据 输出数据
321456 6 21
741258 6 27
963258741 9 45

 

 

 

 

 

 

 

1.1.4 PTA提交列表及说明 

 

答案错误 由于输出值两个%d之间没加空格导致
答案错误 while循环的表达式表达错误
段错误 在运用另一种方法时出现的错误,原因不明
编译错误 有一个中文的分号没发现

 

 

 

 

 

 

1.2 爬动的蠕虫

一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
输入格式:
输入在一行中顺序给出3个正整数N、U、D,其中D<U,N不超过100。
输出格式:
在一行中输出蠕虫爬出井的时间,以分钟为单位。
输入样例12 3 1
输出样例:
11

 

1.2.1数据处理

数据表达:除了输入值定义了两个整型变量:meter,min.并令其初始值为0,分别代表爬行的路程和爬行所用时间。

数据处理:

 

start

输入三个值 n,u,f

while(所爬行的路程大于等于井深时跳出循环)
{
  min++;(所花费时间加1)
         
        switch(min除2取余)
         {
           case 余1:蜗牛向上爬u个meter
           case 余2:蜗牛休息1min,下滑f个meter
          }
}

输出min所用时间

end
      

 

1.2.2实验代码截图

 

 1.2.3 造测试数据

输入数据 输出数据
100 10 1 21
1000 100 10 21
200 10 11 输出错误

 

 

 

 

 

 

 

 

1.2.4 PTA提交列表及说明

 

部分正确 经过修改后,scanf语句中多打了一个%导致部分正确
部分正确 我把min++这条语句放进了switch语句中导致部分正确

 

 

 

 

2.代码互评

同学代码

 

 

 我的代码

 

 

 

这位同学的代码和我最大的不同就在于
1.这位同学发所有的数放在数组里面
2.他定义了了一个#include<string.h>的头文件,用strlen直接得出字符串的长度。

 

同学代码

 

 

 

我的代码

 

 

 

这位同学的思路和我的思路大致相同
主要的不同点是
这位同学把蜗牛的身长也考虑了进去,所以他在运算的终点考虑了蜗牛时身长

所以这位同学的思路更加严谨

 

3.学习总结

3.1学习进度条

这周所花时间

代码行

学到的知识

目前比较迷惑的问题

第六周

20H 372 if-else语句和数学函数 暂无

第七周

10H 226 分支结构 暂无

带八周

12H 110 for循环结构 暂无

第九周

8H 180 函数的声明,定义和调用 对于自定义函数的用法还比较迷茫

第十周

21H 350 学习了巩固了嵌套语句和逻辑表达式的使用方法 对于字符型数据类型的运用和各种运算符的先后级还有待学习

第十一周

17H 530 学习了switch语句的使用方法,和一些数组的使用 getchar不大会用,数组也是

第十二周

20H 546 学习了while语句和do-while语句的使用方法 对于字符串的运用,数组的运用问题很大

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.2 累积代码行和博客字数

 

 

 3.3 学习内容总结和感悟

3.3.1 学习内容总结

 

 3.3.2 学习体会

这次的作业感觉非常难,再加上有很多东西要学,所以感觉压力很大。这一周作业是我第一次出现自己的代码一直出现错误,不得不去借鉴他人的代码,而且自己还找不出改进的方法。

所以这次作业是我目前做的最差的一次作业。

 

posted @ 2019-11-16 09:19  Carrout  阅读(215)  评论(0编辑  收藏  举报