C语言|博客作业07
作业头:
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-1 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11584 |
这个作业的目标 | 学会使用do-while语句,while语句 |
学号 | 20209096 |
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11584 |
我在这个课程的目标是 | 自己能更好的学习do-while语句,有更好学习成果 |
这个作业在那个具体方面帮助我实现目标 | 能然我更好的学习分while语句和do-while语句 |
参考文献 | C语言程序设计,C primer plus |
1.PTA实验作业(20分/题)
自己的排名图片:
1.1 题目名
日本数学家古角静夫研究自然数时,发现一个有趣现象:“如果是个偶数就除2,如果是奇数就乘以3加1”,经过有限个这样的处理步骤,最后一定能得到1. 任意输入一个自然数,给出得到结果1的运算过程。
1.1.1数据处理
数据表达:运用了n,m两个变量,都是整数型变量。
数据处理:首先输入两个变量一定要n不等于1while(m != 1)
然后再判断奇数和偶数 if(n % 2 == 0)
{
m = n / 2;
printf("%d/2=%d\n", n, m);
}
这是偶数
else
{
m = n * 3 + 1;
printf("%d*3+1=%d\n", n, m);}
并进行运算,最后输出答案。
表达式和运算符:主要用了赋值表达式和算术表达式。
1.1.2实验代码截图
1.1.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.1.4 PTA提交列表及说明
提交列表说明:
多种错误: 其实就是包含‘编译错误’和‘运行超时’
答案错误: 这其实是最后一个错误了,我把n m 弄反了。
部分正确:我最开始用的是for循环语句但是出现了一点错误,所以我才用的while语句。
1.2 题目2
用户购买了若干个商品(商品数不超过10),现在,他告诉你每件商品的价格,你计算出这些商品的平均价格。
1.2.1 数据处理
数据表达:用了a,b,num 变量;它们都属于双精度浮点型变量。
数据处理:最开始输入a,b,num变量
然后进行while循环
b=a+b;
num++;
if语句是用来限制商品的数目的
if(num>=10)
{
num=10;
}
表达式和运算符:主要用了赋值表达式和算术表达式。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
890.78 2769.8 12300 3532.2 -1 | 4873.19 | 答案正确 |
890.78 2769.8 16300 3532.2 -1 | 5873.20 | 测试数据 |
1.2.4 PTA提交列表及说明
提交列表说明:
编译错误:最多的还是一些基础问题,如‘&’忘记敲上去了还有‘;’符号在最后没写等等。
部分正确:那个商品不超过十个我没有考虑到。
答案错误:在while语句中我没有写scanf("%lf",&a);这个表达式。
2.代码互评(5分)
同学a:
同学b:
自己的:
(1)同学a和同学b的代码在while语句括号中用的是‘n!=-1’而我用的是大于0相对来说是他比较严谨。
(2)我们三个的代码都有不同的地方,但是同学b的代码更简便,她的这个表达式scanf("%lf",&a);用在了if语句的前面。
(3)在同学a的代码最后if语句里的num=1和a=0是最直观的让我们看懂,我和另外一位同学还是有一点转弯的,他的这一个代码是非常值得我们学习的。
3.学习总结
3.1 学习进度条
周\日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第八周/10.19~10.25 | 12小时 | 100行 | 学会了使用基本的c语言和markdown语法。 | 当时我对所有的都不会,如:半角和全角的区别 |
第九周/10.26~11.1 | 10小时 | 236行 | 知道了常量,变量,和数据类型的定义和使用算数运算和赋值运算 | 一些c语言的语法还不清楚 |
第十周/11.2~11.8 | 14小时 | 340行 | 学会了使用for循环语句 | 一些基本数学函数都不会使用 |
第十一周/11.9~11.15 | 18小时 | 354行 | 学会了调用函数 | 但是还有一点不能理解它的含义 |
第十二周/11.17~11.21 | 13小时 | 319行 | 学会了如何使用分支结构 | 就是那个计算器不知道如何编程 |
第十三周/11.24~11.28 | 11小时 | 400行 | 学会了switch语句的应用和逻辑运算符的使用 | 就是switch语句用的不熟练,缺乏经验和实践 |
第十四周/12.1~12.5 | 12.3小时 | 365行 | 学会了do-while语句和while语句的基本运用 | 最主要的是我上课的时候有点走神,导致do-while语句有点模糊不懂 |
3.2 累积代码行和博客字数 | ||||
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
在学校学习了7周了,同时也经过了7周的c语言学习基本上已经可以自己敲一些简单的代码了,在学这个的同时我的兴趣被完全的激发了出来,C语言的学习不仅改变了我的学习态度,同时也解决了我的孤立的性格。它让我接触到了更多的学长,向他们学习了更多的知识。在第十四周的学习中我明显的感觉到我的提升,但同样的大量的问题也随之而来,但我经过向百度和学长的请教,我也学到了很多,希望我继续坚持下去。