C语言第九次作业
| 问题 | 答案 |
|---|---|
| 这个作业属于那个课程 | C语言程序设计1 |
| 这个作业要求在哪里 | http://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/10028 |
| 我在这个课程的目的是 | 学习并掌握C语言 |
| 这个作业在那个具体方面帮助我实现目标 | 帮助我更好的理解conmunit语句,并熟练的打代码 |
| 参考文献 | C语言程序设计 |
四 作业格式
1PTA作业贴图

1.1题目名 将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
1.1.1数据处理
数据表达:x, count = 0;k,i,j都是整形变量。
数据处理:for ( int k = x / 5; k > 0; k-- ),for ( int i = x / 2; i > 0; i-- ),for ( int j = x; j > 0; j-- )这些表示能被x的5,2,1有多少个,if ( k * 5 + i * 2 + j == x)这个是用来得到答案。
1.1.2实验代码贴图

1.1.3造测试数据:

1.1.4PTA提交及说明:

1)编译错误:我把for中间的那个“;”写成了“,”

2)答案错误:printf中的那个空格没有打。
1.2题目名:找完数 ,所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。
1.2.1数据处理:
数据表达:m, n, i, j, factor[MAXN];都是整形变量,而factor试一串字符串。
数据处理:#define MAXN 1000这是标识符,字符串,max = i / 2;表示一个数最大因子不超过其一半,factor[count] = j,表示逐个记录因子,对因子求和表示为sum += factor[j];
1.2.2实验代码截图

1.2.3造测试数据:
| 数据输入 | 数据输出 | 数据说明 |
|---|---|---|
| 4 60 | 6 = 1 + 2 + 3,28 = 1 + 2 + 4 + 7 + 14 | | |
| 2 100001 | 6 = 1 + 2 + 3,28 = 1 + 2 + 4 + 7 + 14,496 = 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248,8128 = 1 + 2 + 4 + 8 + 16 + 32 + 64 + 127 + 254 + 508 + 1016 + 2032 + 4064 | 10001超出范围了 |
1.2.4PTA提交及说明

1) 编译错误:不小心把count打成cunot,经过我一番寻找,改正后答案正确。
2代码互评
题目:找完数 ,所谓完数就是该数恰好等于除自身外的因子之和。例如:6=1+2+3,其中1、2、3为6的因子。本题要求编写程序,找出任意两正整数m和n之间的所有完数。
自己:![]()
网上代码:![]()
代码区别:1)其实都是网上的代码,这个题目我不会写,我在网上寻找题目借鉴一下思路,第一篇用了一个字符串的东西,而第二篇没有。
2)第二篇相对于第一篇要简单很多,第一篇他用很多的嵌套循环语句来计算,而第二篇他把一些循环语句混在一起写,这样更加简单,也比较明显。
题目 : 将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
自己:![]()
网上代码:![]()
代码区别:1)网上代码他把每一个硬币都定义出来并等于零,感觉很复杂,完全可以一起写出来,然后在for语句中表达出来。
2)网上代码中for语句中最后使用count++,我的代码是--,我把我的代码改成++发现运行超时。
3.学习总结
3.2学习进度条
| 周/日期 | 这周所话的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第一周 | 三个小时 | 60 | 初次了解代码的含义 | 不知道什么时候空格什么时候不空格 |
| 第二周 | 四个小时 | 100 | 知道怎么去制作表格 | %d什么的很多符号都不认识 |
| 第三周 | 七个小时 | 170 | if-else格式和&& | 代码写的一模一样都不对 |
| 第四周 | 七小时 | 150 | 学会了for语句 | 这周作业比较简单基本都懂了 |
| 第五周 | 六小时 | 160 | 学会了调用函数,学会了调试,找代码错误 | / |
| 第六周 | 七小时 | 170 | 学会了%02d,明白定义中的[]的含义 | 不知道怎么表达hh:mm |
| 第七周 | 七个半 | 240 | 学会了switch语句的用法 | 不是很明白for语句的if-else,和switch语句 |
| 第八周 | 六个小时 | 200 | 学会了while循环语句还有do-while语句 | | |
| 第九周 | 八小时 | 300 | 学习了conmunit的用法,了解到了#define的意思(字符串) | 不知道-- 的意思 |
累计代码行和博客字数

3.3.1学习内容总结

3.3.2学习体会
以前我在写博客园的时候我都不会去看别人的博客,自会一个人慢慢的写,不会写的作业就去网上搜,然后模仿理解,但这次犹豫特殊原因,我博客作业来不及写,我在星期刘的时候慢慢的补作业的时候,看了看别人的博客,有很多东西发现比自己写的好的地方,我这次看了一位同学的代码互评,发现他把自己的代码和俩个人的来比较,我以前不会这样,我也不会去花时间去找这些代码。但是我看到别人这样做,我就会觉得自己为什么不可以这样做。以后我应该多多向别人学习,多看看别人的作业。而且,我发现在网上找代码评论感觉很不错,我以后会多在网上找代码。


浙公网安备 33010602011771号