C语言I博客作业05

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/2019TA/homework/9833
我在这个课程的目标是 更加深入的了解并掌握C语言
这个作业在那个具体方面帮助我实现目标 完成PTA上的作业以及和同学们的代码互评
参考文献 《C语言程序设计(第三版)》

1.PTA实验作业

1.1水仙花数判断 .

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

int func(const int N);

其中N是用户传入的参数。N的值不超过int类型的范围。如果参数N是水仙花数,则返回1,否则返回0。

裁判测试程序样例:

#include <stdio.h>
int func(const int N);
int main()
{
 int N;
 scanf("%d", &N);
 printf("%d\n", func(N));
return 0;
}

/* 请在这里填写答案 */

输入样例:

153

输出样例:

1
1.1.1数据处理

数据表达:运用了四个整型变量g,s,b,r;g.s.b.分别用来表示输入的三位数的个位十位百位,r用来表示返回值.
数据处理:

函数参数:主调函数为int main(),被调函数的类型为int func(const int N);其中一个整型实参N和四个形参f,s,b,r.且被调用函数的类型为整型.

1.1.2实验代码截图

1.1.3 造测试数据
输入数据 输出数据 说明
153 1 随机数
345 0 随机数
888 0 随机数
1.1.4 PTA提交列表及说明

提交列表说明:之所以提交了几次正确答案是在测试我的一个猜想,能否在定义函数前打#include<math.h>就能在下面这个函数中使用pow来运算而不产生编译错误.经过PTA和Dev-c++的测试证明了我的猜想是正确的.如下图

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

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

函数接口定义:

int fun(int n );

其中 n 是用户传入的参数。 函数判断n的各位数字平方之和能否被5整除,能被5整除则返回1,否则返回0。

裁判测试程序样例:

#include <stdio.h>
int fun( int n );

int main()
{
      int m;
      scanf("%d", &m);
      printf("The result is %d\n", fun(m));
      return 0;
}

/* 你的程序将被嵌入在这里 */

输入样例:

12

输出样例:

The result is 1

输入样例:

123

输出样例:

The result is 0
1.2.1 数据处理

数据表达:运用了四个整型变量m,r,result;其中r用于返回,m为输入值,result用来表示循环计算出的结果
数据处理:

函数参数:主调函数为int main(),被调函数的类型为int fun( int n );其中一个整型实参m和两个形参result,r.且被调用函数的类型为整型.

1.2.2实验代码截图

1.2.3 造测试数据
输入数据 输出数据 说明
148 0 随机数
323 0 随机数
534 1 随机数
1.2.4 PTA提交列表及说明

提交列表说明:

1.部分正确:没有用scanf输入n,导致结果一直输出为1以至于部分正确。
2.编译错误:输入scanf语句时多大了一个分号。
2.代码互评

同学代码截图

自己代码截图

不同之处:
-1.同学的return多于一个,如果没有处理好if跟else的判断,很容易造成return错误,导致程序错误。
-2.所使用的循环不同,有if还有while循环结构。

3.学习总结
3.1 学习进度条
周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
7/7-7/13 10 小时 235 循环语句for的使用以及格式
8/14-8/20 8小时 197 定义全局变量
9/21-9/27 17小时 537 函数的调用
3.2 累积代码行和博客字数

3.3 学习内容总结和感悟
3.3.1 学习内容总结

3.3.2 学习体会

本周在做PTA的作业水仙花数判断这道题时,刚开始对将一个三位数的十分位数提出来感到很无望,但我花费了很多的时间去思考这个问题,最终还是想到了怎么表示出来,不仅如此我还同时想到了两种表示出来的方法,如下:

  • 1.s=(N/10)%10,其中s,N均为整数型;
  • 2.s=(N-g*100),其中变量均为整型;
    具体每个变量代表什么请看上文水仙花数判断的代码
posted @ 2019-10-24 21:40  李定鸿  阅读(183)  评论(1编辑  收藏  举报