C语言I博客作业05
一、本周教学内容&目标
第2章 用C语言编写程序-函数 2.5 生成乘方表与阶乘表。使学生对函数的定义和调用有初步的认识,能模仿编程。
二、本周作业头
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/9826 |
我在这个课程的目标是 | 熟悉运用自定义函数 |
这个作业在那个具体方面帮助我实现目标 | PTA作业,以及学长的链接,网络资源 |
参考文献 | 百度,知乎 |
三、本周作业
- 1.PTA实验作业
- 2.代码互评
- 3.学习总结
四、作业格式
1.PTA实验作业(20分/题)
从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分),内容要求如下:
1.1 判断一个整数的各位数字平方之和能否被5整除
题目内容描述:编写函数fun,其功能是:判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
函数接口定义:
int fun(int n );
其中 n 是用户传入的参数。 函数判断n的各位数字平方之和能否被5整除,能被5整除则返回1,否则返回0。
1.1.1数据处理
数据表达:
函数参数:
1.1.2实验代码截图
1.1.3 造测试数据**
输入数据 | 输出数据 | 说明 |
---|---|---|
-45 | The result is 1 | 负数 |
45 | The result is 0 | 随机数 |
345 | The result is 0 | 随机数 |
1254 | The result is 0 | 比较大的数 |
1.1.4 PTA提交列表及说明
提交列表说明:
- 部分正确:sum%50打成了sum/50
1.2 水仙花数判断
题目内容描述:本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=13+53+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.
函数接口定义:
int func(const int N);
其中N是用户传入的参数。N的值不超过int类型的范围。如果参数N是水仙花数,则返回1,否则返回0。
1.2.1数据处理
数据处理:
函数参数:
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
25 | 0 | 两位数 |
153 | 1 | 三位数 |
2500 | 0 | 四位数 |
1.2.4 PTA提交列表及说明 | ||
提交列表说明:
- 编译错误:const定义N,N不能被赋值,我把N赋值导致编译错误。
- 解决方案:添加一个变量,把N的值赋给变量。
2.代码互评
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
1.对比1
2.1.1同学代码截图:
2.1.2自己代码截图:
区别:
- 他分别算出来该数的个、十、百位上的数,再求立方和,在与原数比较是否相等。而我直接用循环结构算出每个位的数,在把他们的和存在sum里。他这种方法只限用于三位数,当出现多位数要判断时,这种方法就不太好用,for循环就可以很好的解决这个问题,不需要太多的代码。
2.对比2
2.2同学代码截图:
2.2自己代码截图:
区别:
- 他直接返回sum%5==0,而我用if-else返回数据。
而我们的判断条件不一样,但我们的效果是一样的,因为当n除以10时,因为是整型数据相除所以是整数,n除以10,只能是非负数,当n除以10为0时,就已经把所有位上的数字取完了。
3.学习总结(15分)
3.1 学习进度条(5分)
周 /日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第一周 | 3小时 | 60 | 学会输出字符 | 无 |
第二周 | 10小时 | 186 | 学到变量名称、运算、把变量的结果输出 | 无 |
第三周 | 7.5小时 | 245 | 学会if条件判断 | 无 |
第四周 | 5小时 | 120 | 学会使用for循环 | 无 |
第五周 | 6小时 | 80 | 学会定义函数,do while 等循环 | 一些复杂的函数看到不知道怎么定义,不了解一些新定义,比如const |
3.2 累积代码行和博客字数(5分)
时间 | 博客字数 | 代码行数 |
---|---|---|
第一周 | 183 | 60 |
第二周 | 1774 | 186 |
第三周 | 2149 | 245 |
第四周 | 1585 | 120 |
第五周 | 1645 | 80 |
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
请用思维导图的形式将到目前为止所学的内容进行整理。
3.3.2 学习体会
我觉得自定义函数有点看不懂,“return product”不知道返回结果是什么意思,对于一些新的语句(比如break)不熟悉,所以做题目也会有一些困难。但是现在网络的资源也很丰富,可以通过一些网站上查找学习资源。
上节课学习的内容我感觉比较复杂,而且题目也比较有挑战性,还包含了一些没有教的内容,但是每次做出题目后都会有满满的成就感。
五、评价标准
C语言作业评价标准
本次作业特别注意:
- 1.提交列表没内容,或者太简单,每题得分0分。注意选择提交列表长的题目介绍。
- 2.代码格式不规范,0分。
- 3.代码互评,内容简单,0分。
- 4.学习内容总结无思维导图,0分。