C语言I博客作业05

限于喜欢 提交于 2019-12-02 11:42:58
这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 C语言I作业05
我在这个课程的目标是 学会使用函数fact(i)掌握阶乘的算法
这个作业在那个具体方面帮助我实现目标 在编写PTA作业的过程中,逐渐熟练
参考文献 集美大学林丽老师

1.PTA实验作业

1.1 题目名1

判断一个整数的各位数字平方之和能否被5整除

编写函数fun,其功能是:判断一个整数的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。

1.1.1数据处理

  • 数据表达:图中有a,sum两个字母,使用的是整数型,其中a代表每次除以10的余数,sum代表各个数字的平方和。
  • 数据处理:根据题意可得a=n%10,sum=sum+a*a。在使用if语句判断sum是否能被5整除。
  • 函数参数:主调函数为int main(),被调函数为int fun(int n),都为整型函数。n为实参,a,sum为形参,它们都为整型参数。

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
9 0 不能被5整除
56 0 不能被5整除
125 1 可以被5整除

1.1.4 PTA提交列表及说明

  • 编译错误:忘记在a之间打上*号
  • 编译错误:忘记在赋值语句后打上;号
  • 编译错误:未理解清楚题目意思,将1和0的位置打反了
  • 编译错误:if语句中未打两个等号

1.2 题目2

水仙花数判断

题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=1^3+5^3+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.

1.2.1 数据处理

  • 数据表达:图中有i,s,a三个整型字母,其中i=N代表输入的数,a代表i除以10的余数,s代表各个数字三次方的和。
  • 数据处理:据题意可知N=i,a=i%10,s=s+aaa,利用while语句可算出各个数字三次方的值。
  • 函数参数:主调函数为int main(),被调函数为int func(const int N),都为整型函数。其中N为实参,s,a都为形参,且都为整数参。

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
8 0 8的立方不等于8
26 0 2的立方加6的立方不等于26
228 0 2倍2的立方加上8的立方不等于228

1.2.4 PTA提交列表及说明

  • 编译错误:第一行的被调函数后面加上了;号
  • 部分正确:忘记打i=N
  • 部分正确:将s=s+aa中的s忘记了
  • 部分正确:s==N中的等号只打了一个

2.代码互评

##同学代码截图

自己代码截图

* 该同学一开始便用了数学函数来计算次方,而我因为次方不多直接用的乘法,较简单一些。
* 在循坏上,我用了while循环,该同学用了for循环。for循环可以设置次数,而while循环条件满足没有次数限制。因此各有各的好。

同学代码截图

自己代码截图

* 相同:我与该同学一样设置了三个整型变量
* 不同:该同学直接给三个变量设置了三个表达式,将x,y,z一个个算出,而我依然使用的是while循环。同学的方法比较好理解,不过编写较麻烦,可以适当借鉴。

3.学习总结

1.3.1 学习进度条

周/日期 这周所花的时间 代码行数 学到的知识点简介
第四周 2天 28 学习语句的输出
第六周 4天 20 用 MinGW-w64 来编译C程序,学习编程计算温度的转化
第七周 3天 99 学习用if,else等语句编译程序
第八周 2天 75 学习使用循环语句,用for来编译程序
第九周 3天 94 学习各种使用函数eg:fact(i)

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

3.3.2 学习体会

```
在本周的学习过程中我接触到了函数,不得不说的是函数不管是在数学里还是C语言中都是让人烧脑袋的一部分。从PTA的题目可以看出函数需要较强的逻辑性和理解力,还需要对函数的表达有一定的了解。学习内容越来越深入,难度、代码行数也在逐渐增多。因此为了跟的上题目的步伐,我们也该不断努力的提升自己。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!