问题 | 回答 |
---|---|
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | 作业要求 |
我在这个课程的目标是 | 对函数的定义和调用有初步的认识,能模仿编程 |
这个作业在那个具体方面帮助我实现目标 | 在PTA题中,多次对函数的定义和调用,以及在Dev-C++中调试。 |
参考文献 | 思维导图 C语言作业评价标准 |
1.PTA实验作业(20分/题)
1.1水仙花数判断 (10 分)
本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=1^3+5^3+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.
1.1.1数据处理
- 数据表达:定义sum,x为整型变量,sum是用sum += (x % 10) * (x % 10) * (x % 10)计算每个数立方的和,由于N不可变,就把值赋给了x。
- 数据处理:运用到了 func 函数,while循环语句,if-else语句,表达式:m += (n % 10) * (n % 10) * (n%10); n/=10;
函数参数:主调函数:main(){} 被调函数func(const int N) 实参:N 形参:N 类型是变量
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
100 | 0 | 不是水仙花函数 |
186 | 0 | 不是水仙花函数 |
153 | 1 | 是水仙花函数 |
370 | 1 | 是水仙花函数 |
1.1.4 PTA提交列表及说明
这个题目是三位数每位数的立方之和等于本函数,所以我想到了求余,把代码和裁判程序,在C语言编译器上,尝试几次正确了。
答案错误:第一次十位数运算符用了,把除号和求余运算符放对位置就正确了。
判断一个整数的各位数字平方之和能否被5整除 (10 分)
编写函数fun,其功能是:判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
1.2.1数据处理
- 数据表达:运用到了参数n,整形变量m,判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
- 数据处理:运用了if语句,且用到了fun函数,用到了表达式:s += (n%10)*(n%10)。
函数参数:主调函数:main()被调函数:fun(int n) 实参:m 形参:n 被调函数类型是变量
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
1 | The result is 0 | 这个数字各位数平方之和不能被5整除 |
25 | The result is 0 | 这个数字各位数平方之和不能被5整除 |
5 | The result is 1 | 这个数字各位数平方之和能被5整除 |
222 | The result is 0 | 这个数字各位书平方之和不能被5整除 |
1.2.4 PTA提交列表及说明
本题不太难,结合例题,在C语言编译器上,运算几次对了。
2..代码互评(5分)
1.他的代码只用了2个变量,并且运用了while语句,去了将各位数立方的步骤,更简便。
2.我的代码使用了四个变量,其中前三个用于收集各位的数,后一个变量是将各位数的立方相加。
3.我的代码与他的相比,各有优点,我的代码利用空间换时间,运行的时候可以更快的运算出来,他的代码节省了空间,代码行数短一点。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10.20~10.27 | 32h | 135 | 如何对函数的定义和调用,思维导图 | 函数的调用和定义有没有局限性。 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
本周有点勿忙,可能由于个人原因,本次博客园做的十分缓慢,力不从心的样子,下周我会调整心态,好好学习C语言。本周在机课上学习dev-c++,让我在做PTA时,能够大幅度减少错误次数,并且能够准确找到错误所在,本周最大困难还是PTA中哥德巴赫猜想,这题没有思路,在百度的帮助下,虽然经过无数次失败,成功做对了,但许多地方还是不解,我会努力将这份代码看懂的。本周主要学习了,函数的定义,原因函数还能自己定义,不在局限于那几个函数,让我视野更加宽扩。这周有点偷懒,希望下周我会更努力吧!