C语言作业08

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-4/homework/9832
我在这个课程的目标是 <开发小游戏>
这个作业在那个具体方面帮助我实现目标 <学会switch语句,还有定义新函数>
参考文献 <c语言第二版,【美】布莱恩著>

一.PTA实验作业

1.1题目名: 求整数的位数及各位数字之和 (15 分)

对于给定的正整数N,求它的位数及其各位数字之和。

输入格式:
输入在一行中给出一个不超过10
​9
​​ 的正整数N。

输出格式:
在一行中输出N的位数及其各位数字之和,中间用一个空格隔开。

输入样例:
321
输出样例:
3 6

1.1.1数据处理

数据表达:定义了num,sum,count,n。
数据处理:使用do-while反复进行选取

伪代码

1.1.2实验代码截图

1.1.3造测试数据

输入数据 输入数据 说明
654 3 15 此数的位数为3,此数的各个位数和为15
9874 4 28 此数的位数为4,此数的各个位数和为28
456789 6 39 此数的位数为6,此数的各个位数和为39

1.1.4PTA提交列表及说明

答案错误:没有返回正确结果,我是错在了number整除的各个位数上。

1.2题目名: 韩信点兵 (10 分)

在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:

按从1至5报数,记下最末一个士兵报的数为1;
再按从1至6报数,记下最末一个士兵报的数为5;
再按从1至7报数,记下最末一个士兵报的数为4;
最后按从1至11报数,最末一个士兵报的数为10;
请编写程序计算韩信至少有多少兵。

输入格式:
本题无输入

输出格式:
输出韩信至少拥有的士兵人数。

1.2.1数据处理

数据表达:先定义了a为使用量,使用了for循环语句。
数据处理:然后通过if语句进行判断韩信点兵的四个方法。

伪代码

1.2.2实验代码截图

1.2.3造测试数据

输入数据 输入数据 说明
456187 456187 韩信有456187个兵
698732 698732 韩信有698732个兵
789365 789365 韩信有789365个兵

1.2.4 PTA提交列表及说明

1.编译错误:在定义变量的时候int忘记了t,只是粗心导致

二.代码互评

2.1同学代码截图

自己代码截图

1.本质上没什么不同,都运用了while,不过我把do-while也运用起来了。
2.她定义的量比我复杂,没有简化。

2.2同学代码截图

自己代码截图

  1. 她用的也是if的循环语句,但是我的直接把题读懂后赋给a=11。
  2. 她的话就是定义i=1,然后进行累加。

    三.学习总结

3.1学习进条度

周/日 这周所花时间 代码行 学到的知识简介 比较迷惑的问题
第四周 10 60
第五周 15 70
第六周 20 100
第七周 25 130
第八周 30 150 学会打累加 有时候打到的知识简介
第九周 35 180 学习了定义新函数 对于新函数的定义不是很理解
第十周 15 256 学了if-else语句 不会灵活应用if-else语句
第十一周 8 342 学了switch语句 不会运用switch语句
第十二周 7 435 学会了do-while语句 对于do-while语句的灵活运用

3.2学习内容总结和感悟

3.2.1内容总结

3.2.2感悟

自我感觉越来越熟悉代码的结构与基础了,能够自己打出难度不是很大的代码了。
这让我信心大增,不在是个什么都不会的人了,所以我对以前七八九个小时的敲代码取得如今的一点点小进步而感到值得。
作业虽多但是真的很快乐。
作业量越来越多且难度越来越大,但现在效率有明显的提升。
我希望学习到更多的语句,以及很好玩的代码,我很喜欢打代码的感觉。
我相信自己以后会成功的开发出小游戏程序。

猜你喜欢

转载自www.cnblogs.com/ysshhd/p/11861144.html