C语言I博客作业07
作业头
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11591 |
这个作业的目标 | 学会熟练地运用语句的嵌套使用,数组的运用,多种条件下理清自己的逻辑思维 |
学号 | 20209056 |
1.1 7-1 求整数的位数及各位数字之和 (15分)
对于给定的正整数N,求它的位数及其各位数字之和。
1.1.1数据处理。
数据表达:输入了number,x,y,i五个整型变量,其中number为输入数据,x作为其中的运转值,i,y分别作为N的位数和各位数之和输出。
数据处理:表达式:【x=x/10;】【i++;】【y=y+number%10;】【number=number/10;】流程结构:运用了两个while语句,分别获得N的位数和N的各位数之和的值。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
321 | 3 6 | 题目测试数据 |
1 | 1 1 | 数据为最小正整数时的情况判断 |
1000000000 | 9 1 | 数据为题目中最大正整数时的情况判断 |
1.1.4 PTA提交列表及说明
提交列表说明:
本题我在DEV-C++中错了两次,第一次是思绪没整理好,导致写出来了一个死循环(连我自己都看不下去),第二次是我自己想着用for循环来解决问题,结果直接编译错误了,然后放弃了,改用了while
1.2 题目2
7-3 循环-古角猜想 (20分)
日本数学家古角静夫研究自然数时,发现一个有趣现象:“如果是个偶数就除2,如果是奇数就乘以3加1”,经过有限个这样的处理步骤,最后一定能得到1. 任意输入一个自然数,给出得到结果1的运算过程。
1.2.1 数据处理
数据表达:定义了x,y,两个整型变量,x为输入的数据,y为辅助运算的变量。
数据处理:表达式:【x = x*3+1;】【x = x/2;】;运用了while和if两个语句(while内嵌套了两个if语句)。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
5 | 5*3+1=16 16/2=8 8/2=4 4/2=2 2/2=1 | 输入数据为奇数时的情况判断 |
6 | 6/2=3 33+1=10 10/2=5 53+1=16 16/2=8 8/2=4 4/2=2 2/2=1 | 输入数据为偶数时的情况判断 |
1.2.4 PTA提交列表及说明
说明:
前三次答案错误(我也很是无奈),当时脑袋一片浆糊,思路混乱,一个很简单的题目我想得特别复杂,尝试了各种语句,知道最后室友个我点播了一下才搞清楚了到底怎么想的但还是在最后面写代码的时候还是写错了一个符号,哭死,我都不知道自己问什么会出现这么多错误。最后经过千辛万苦终于得出了正解。
2.代码互评(5分)
同学代码截图
同学1的代码:
同学2的代码:
自己代码截图
对比:
1,同学一的代码较简洁,不过还是过于啰嗦;
2,同学2的代码和我的差不多,不过他的要复杂一点,因为设置了多个整形变量以及浮点型变量。
3,我自己的代码相对来说较简洁,但是还可以缩短,不需要两个while语句,综合为一个while语句就行了,不过这也体现了我做题目的思路,把题目刨析为一个个的点,然后再去编写代码。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/12——10/18 | 15h | 157 | 简单的模仿书本敲打代码 | |
10/19——10/26 | 28h | 481 | 学到了if语句并能初步理解代码的意思 | |
10/27——11/8 | 34h | 832 | 学完了循环的大部分,能够看懂已经学过地代码和他地作用 | 无法熟练的运用各种语句,使用嵌套地语句十分困难 |
11/9——11/15 | 13h | 341 | 学会了简单地自定义函数,并学会了如何制作知识树 | 思维方式太过死板,编写的程序复杂难懂 |
11/16——11/22 | 14h | 257 | 循环的嵌套和数组的是哟个有点麻烦,主要是没有时间静下心去仔细学习 | |
11/23——11/29 | 12h | 189 | 数组的使用有点麻烦,再就是语句的使用有时候真的不知道为什么会直接跳过,只能通过调试一步步改过来,挺麻烦的 | |
11/30——12/7 | 10h | 236 | while语句的嘘唏我没什么问题,但是do-while的使用我还是有一点模糊,不是很清楚while和do-while的主要区别在那个地方。 |
3.2 累积代码行和博客字数(5分)
时间 | 博客字数 | 代码行数 |
---|---|---|
第一周 | 598 | 157 |
第二周 | 620 | 481 |
第三周 | 1174 | 832 |
第四周 | 1425 | 357 |
第五周 | 1545 | 257 |
第六周 | 1865 | 189 |
第七周 | 1740 | 236 |
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
本周主要学习了while和do-while两个语句,我也觉得自己还可以了。
3.3.2 学习体会
感觉自己学的东西都差不多了,但是做题目的时候还是会做的比较慢,做题目的时候第一反应就是自己没有思路,然后就是思路不够清晰,导致我做题目的时候要用很多的时间去解决一道问题。第二就是语句的运用不够规范,一直都不知道自己在写作业的时候首先要用什么样的语句去解决问题,总是要试很多次。