C语言I博客作业07
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-2/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11585 |
这个作业的目标 | 通过作业来熟练掌握while和do-while循环语句 |
学号 | 20209146 |
作业头
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11585 |
我在这个课程的目标是 | <熟练掌握while和do-while循环语句的用法> |
这个作业在那个具体方面帮助我实现目标 | <熟练运用C语言中循环结构,掌握while和do-while用法,复习之前学的if和for语句等C语言知识> |
参考文献 | 《C语言程序设计》,《Cprimer Plus》,以及网上搜查 |
1.PTA实验作业
请再此处列出自己的排名图片
1.1 题目2
题目内容描述
1.1.1 数据处理
数据表达 | 运用众多变量,如h,a,H,A,ph,pa,都是有自己赋值,而count,n则是编码需要 |
---|---|
数据处理 | 编码使用了while循环语句和if-else判断语句,其中if-else运用了多次,用来比较小刘的血量和他的室友攻击力,判断小刘能否成为野王。 |
伪代码:Begin 输入:H,A,h,a,ph,pa
h=h+ph a=a+pa n=H
if(a>=H) Begin
printf "The king of the wild certification!"
end else Begin
while(h>0) begin
H=H-a
if(H<=0) begin
count++
H=n
end
else
begin
h=h-A
end
end
if(count==0) begin
printf"I'm too dishes!"
end
else begin
输出 count
end
1.1.2 实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 1 3 2 4 1 |
2 | 小刘击败的室友数量2 |
3 4 7 3 5 2 |
2 | 小刘击败的室友数量2 |
8 9 9 6 7 1 |
The king of the wild certification! | 小刘能击败无限多的室友成为认证的野王 |
1 2 3 4 1 0 |
I'm too dishes! | 小刘不可以击败任何一个室友 |
1.1.4 PTA提交列表及说明
这个野王认证我是最后一个做的,看完这个题目后,感觉和第四题编写差不多,还要简单一点,所以有第四题的借鉴,就完成的快一点,第一次就成功了
1.2 题目名1
题目内容描述
1.2.1数据处理
数据表达 | 这段代码我使用了多个整型变量,如x,y,i,N,其中x,N,y的数值是由自己赋予的,而i则是编码需要的。 |
---|---|
数据处理 | 该编码通过多次运用if-else判断语句和一次while循环语句进行编写,来比较输入数字和随机数字的大小,以及判断多少次成功猜中。 |
伪代码:
输入x,N
do
输入y
i++
如果(y<0 && i<=N)
输出"Game Over"
结束
否则 如果(x>y)
输出"Too small"
否则 如果x<y)
输出"Too big"
}while(x!=y)
if(x==y && i==1)
输出"Bingo!"
否则 如果(x==y && i<=3)
输出"Lucky You!"
否则 如果(x==y && i<=N)
输出"Good Guess!"
否则 如果(x==y && i>N){
输出"Game Over"
return 0
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
78 5 66 69 80 78 8 -1 |
Too small Too small Too big Good Guess! |
第一次偏小 第二次也偏小 第三次偏大 第四次猜中数字 |
6 4 80 67 49 72 24 45 -1 |
Too big Too big Too big Game Over |
第一次偏大 第二次偏大 第三次偏大 第四次未猜中数字结束游戏 |
16 3 75 1 4 34 25 16 -1 |
Too big Too small Game Over |
第一次偏大 第二次偏小 第三次未猜中数字结束游戏 |
92 6 87 92 46 77 67 2 -1 |
Too small Lucky You! |
第一次偏小 第二次猜中数字 |
7 5 99 89 7 87 66 77 9 -1 |
Too big Too big Lucky You! |
第一次偏大 第二次偏大 第三次猜中数字 |
66 6 66 8 98 46 -1 |
Bingo! | 第一次直接猜中数字 |
1.2.4 PTA提交列表及说明
这个代码开始就写了好多遍,主要是在编译器里写的,当通过之后,再移到PTA上交的,所以就没什么错误。
部分正确 | 代码主要错误是不知道如何整合两个输出“Game Over”,就在PTA上试了一下,发现不行,果断分散写,然后就成了。 |
---|
2.代码互评
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图1
自己代码截图1
找不同:
1.从整体上看,他的代码非常简洁,给人一种舒适感,就是行数太多;而我的代码就没有注重排面,只是单纯的完成,还有待提高。
2.从使用的数据类型看,都是使用了while循环语句和if-else判断语句,但他使用了太多的if-else语句,有点多余了。
同学代码截图2
自己代码截图2
找不同
1.从整体上看,这位同学的代码和我的代码差不多,但感觉我的要简单点。|
2.从语句上看,用的都是while循环语句加if-else判断语句,它还使用了sum_%d这个东西,而我却不会,甚至没懂,还有待提高呀!|
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行数 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
8 | 26h | 504 | 输入、输出函数 | 加减乘除的运算法则 |
9 | 30h | 464 | 其他类型的函数如double等 | 判断语句if else |
10 | 35h | 545 | for循环语句、if else判断 | 其它循环语句还是不怎么懂 |
11 | 30h | 608 | for循环的组合使用、调用自己定义的函数 | 调用函数不够熟练 |
12 | 36h | 639 | if-else判断语句的进一步学习连续判断语句 | 判断语句if-else不够熟练,字符型还是分不清有些混乱 |
13 | 32h | 629 | switch的用法 | 还是难以用switch来解决问题 |
14 | 45h | 800 | while和do-while的用法,以及区别 | 就是自己写完代码后,不知道错哪了,有点烦 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
学习c程序这门课近半个学年了,这是我们学的第一门专业课,在大学里c语言不但是软件工程专业的必修课程而且也是非软件工程专业学习计算机基础的一门必修课程。所以作为我这个软件专业的学生来说当然十分重要,老师在第一节课说过,c语言是计算机的基础,大多数软件都需要用c语言来编写,通过近半个学年的学习,使我由初步掌握简单的应试知识到已能够自觉完成编程的成长,如我们在编写一个较大的程序时应该把它分开成几个小程序来看,这样会容易得多。同时,我觉得c语言应该是操作和理论相结合的课程,在不断地编写中去思考,两者是不可分割的;学了这么久的C语言专业课,已不再是懵懂少年,我们应该向着太阳初升的地方前进,加油吧,少年!!!