一、表格
问题 | 答案 |
---|---|
这个作业属于那个课程 | C语言程序设计II |
这个作业要在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/9825 |
我在这个课程的目标是 | 深入了解C语言,争取掌握更多的数据类型及结构,熟练地编译有效代码 |
这个作业在那个具体方面帮助我实现目标 | 学习到自定义函数,可以帮助我简化代码 |
参考文献 | C语言程序设计 |
二、本周作业 | |
============= | |
1. PTA实验作业 |
1.1 题目名1
编写函数fun,其功能是:判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
函数接口定义:
int fun(int n );
其中 n 是用户传入的参数。 函数判断n的各位数字平方之和能否被5整除,能被5整除则返回1,否则返回0。
1.1.1 数据处理
数据表达:整型变量(n,sum,a)、n的值是接收输入的值,开始给sum赋值为零,a就是n/10是的余数
数据处理:用到了for循环结构、if-else分支结构。表达式有赋值运算符(=)、算术运算符(+,%,/)、关系运算符(==)。
函数参数:主调函数是main()、被调函数是fun()。被调函数是整型的,形参是n、实参是m 。这里还用了数学函数pow。
1.1.2 实验代码截图
1.1.3 造测试数据
输入 | 输出 | 说明 |
---|---|---|
10 | The result is 0 | 最小两位整数 |
500 | The result is 1 | d较大三位整数 |
999 | The result is 0 | 最大三位整数 |
1.1.4 PTA提交列表及说明
部分正确:这个错误我找了很长时间一直没有找出来,就在尝试改变1和0的顺序。
部分正确:这个错误我找了很长时间一直没有找出来,就在尝试改变1和0的顺序。
部分正确:直到第三次发现不是return这里的错,是在上面的a=n%10和n=n/10的位置反了导致答案一直不正确。
1.2 题目名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 数据处理
数据表达:整型变量(a,b,N,sum),a是b/10的余数,把N的值赋给b,给sum的初始值赋为0。
数据处理:用到了for循环结构、if-else分支结构。表达式有赋值运算符(=)、算术运算符(+,%,/)、关系运算符(==,>)。
函数参数:主调函数是main()、被调函数是func()。被调函数是整型的,形参是N、实参是N。这里还用了数学函数pow。
1.2.2 实验代码截图
1.2.3 造测试数据
输入 | 输出 | 说明 |
---|---|---|
153 | 1 | 验证题目数据 |
1 | 1 | 最小自然数 |
125 | 0 | 较大三位数 |
1.2.4 PTA提交列表及说明
答案正确:这道题和第二题很像,而且在编译器上事先验证过,所以就一次正确了。
2. 代码互评
同学代码①
自己代码①
- 第一眼看上去两份代码就有很大区别,同学的代码很简洁,我的却很长。
- 这位同学用了while循环语句,我用的的是for。目前while还没学,看来这位同学有提前学习。
- 我用了if-else语句,这位同学却没用,虽然我没看懂但是他的很简单。
同学代码②
自己代码②
- 同学用的while循环语句,我用的是for循环语句。这两者while更简单一点。
- 两份代码都用了if-else语句来判断输出。
- 同学代码在计算sum是用的乘,我用的是pow函数。同学的代码长但运行简单,我的代码短但运行较复杂,毕竟多了一个函数。
3. 学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较困惑的问题 |
---|---|---|---|---|
第五周/10-24 | 3 | 155 | 学习到了自定义函数 | 自定义函数的具体定义过程,实参形参有些迷惑 |
3.2 累计代码行和博客字数
3.3 学习内容总结
3.4 学习体会
- 本周重点学习了自定义函数,目的是减少编程中多次重复的过程。先定义函数再调用该函数进行运算。
- 这周内容感觉感觉掌握的不是太好,在定义过程复杂是就有些想不通了。特别是这次PTA第四题完全不会,想不出是怎样的过程。
- 对于这周内容还是要再学习学习。