代码改变世界

C语言第02次作业--循环结构

2018-10-28 16:53  HappyBoy~  阅读(2564)  评论(0编辑  收藏  举报

1.本章学习总结

1.1思维导图

1.2本章学习体会及代码量学习体会

1.2.1学习体会

1- 经过这两周的学习,我深切地体会C语言非常的难(对于我而言)。大部分情况都是题目不理解和没有思路,或者编译不正确和格式出错误。
2- for是先判断后执行,while也是先判断后循环,do while是先循环后判断;for适用于循环次数已知的情况,while适合循环次数未知的情况,do while也是适用于循环次数未知的情况。
3- 除了学习单层循环还学习了嵌套循环,具体不是很清楚。
4- break和continue语句,一个结束循环,一个跳过后面语句继续循环。
5- 学习伪代码,他是读者的思路,有语言描述和C的语法描述。

1.2.2代码累计

2. PTA总分

2.1 截图PTA中循环结构2次题目集的排名得分


2.2 我的总分:

3. PTA实验作业

3.1 PTA题目1

C练习--循环结构(单层)(20分)
7-4特殊a串数列求和
给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。

3.1.1算法分析

定义变量 i,l, n,s,s1为整点型int。让 s1=0, s=0;
输入 &l, &n;
由 for实现(i=1; i<=n; i++)循环
用pow函数表示s1+=pow(10,i-1)*l;

3.1.2代码截图

3.1.3测试数据

3.1.4PTA提交列表及说明


说明:出很多次错误。有格式错误,编译错误和运行超时。最终才答案正确,但是脑袋里显现的还是why。

3.2PTA题目2

C练习--循环结构(单层)
7-2 求幂级数展开的部分和 (20 分)
已知函数e
​x
​​可以展开为幂级数1+x+x
​2
​​/2!+x
​3
​​/3!+⋯+x
​k
​​/k!+⋯。现给定一个实数x,要求利用此幂级数部分和求e
​x
​​的近似值,求和一直继续到最后一项的绝对值小于0.00001。

3.2.1算法分析

用double定义x,sum,sum_1并使isum=1,sum_1=1;;
用int定义 item,i和k并赋 k=1, item=11;
double sum=1,sum_1=1;
输入浮点型("%lf",&x);
由while实现循环:(fabs(item)>0.00001);
由for实现循环:(i=1;i<=k;i++);
用pow函数实现item=pow(x,k)/sum_1;

3.2.2代码截图

3.2.3测试数据

3.2.4PTA提交列表及说明


说明:出很多次错误。有格式错误,编译错误。最终才答案正确,但是脑袋里显现的还是why。

3.3PTA题目3

2018-c-循环的嵌套
7-4 换硬币 (20 分)
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?

3.3.1算法分析

用 int定义变量 c5,c2=0,c1,cnt。并赋0为初值。其中c为硬币,cnt为换法总数
用 int定义变量x并 x=13,x为零钱
输入("%d",&x)
由for函数实现(c5=x/5;c5>0;c5--)
(c2=x/2;c2>0;c2--)
(c1=x;c1>0;c1--)循环
利用数学函数实现(c55+c22+c1==x)
输出("fen5:%d, fen2:%d, fen1:%d, total:%d\n",c5,c2,c1,c5+c2+c1);cnt++;

3.3.2代码截图

3.3.3测试数据

3.3.4PTA提交列表及说明


说明:出很多次错误。有格式错误,编译错误。问来问去,在网上查看,最终才答案正确,但是脑袋里显现的还是why。

4. 代码互评

4.1 代码截图

同学的:1代码

我的:2代码

4.2 两者的不同

1-1代码非常简单,使用for函数实现循环;
2-2代码有一定的注释,也是用for函数实现循环;
3-2代码相对1代码来说更复杂一点。