C语言I作业05

谁说我不能喝 提交于 2019-12-02 09:44:47

呦呦 2019/10/25 23:35:15
一、本周教学内容&目标
第2章 用C语言编写程序-函数 2.5 生成乘方表与阶乘表。使学生对函数的定义和调用有初步的认识,能模仿编程。

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9828
我在这个课程的目标是 学习基本函数的定义和调用
这个作业在那个具体方面帮助我实现目标 使用基本函数实现简化程序
参考文献 百度

1.PTA实验作业
1.1 题目名1

编写函数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;
}

1.1.1数据处理

数据表达:运用(整型)int定义sum,result 
数据处理:运用for循环语句;while语句判断n的值来确定输入值n 用取余(sum+=(n%10)*(n%10);)的算术式计算每一个数字,运用 除号(n=n/10;)来缩减n的值。
**函数参数:主函数:int main(),被调函数:int fun( int n ),被调函数的类型:整型,形参的名称:int n  类型:整形。

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
-15 The result is 1 n<0
0 The result is 1 n=0
15 The result is 0 n>0

1.1.4 PTA提交列表及说明

1.编译错误:开始对定义函数不是很清楚,错误把调用函数打上 ;
2.部分正确:取余计算逻辑错误

1.2 题目2

本题要求编写程序,根据公式Cnm=m!/((n−m)!n!)
​​算出从n个不同元素中取出m个元素(m≤n)的组合数。
建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。

输入格式:

输入在一行中给出两个正整数m和n(m≤n),以空格分隔。

输出格式:

按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。

1.2.1 数据处理

数据表达:整型定义(int)变量i ,double 定义 t。
数据处理:运用for循环语句累成(*)t 的值。
**函数参数:主函数:int main(),被调函数的名称:double f(int n),被调函数的类型:整型,形参的名称、类型:n;整型。

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
3 6 20 m==n/2
3 3 1 m==n
6 3 0 m>n

1.2.4 PTA提交列表及说明

1.多种错误:格式错误最多,发现输出result的格式要求不正确
2.部分正确:没有按题目要求double定义函数类型

2.代码互评
图1.
图2.
我的代码;图1 同学代码:图2

1.我感觉图2的代码计算性大,不是很好理解,比如他使用的(N-X*100)/100,让人不好理解

3.学习总结
3.1 学习进度条

这周所花的时间 代码行 学到的知识点简介
5 6个小时 190 while语句,break终止语句

呦呦 2019/10/25 23:36:11
一、本周教学内容&目标
第2章 用C语言编写程序-函数 2.5 生成乘方表与阶乘表。使学生对函数的定义和调用有初步的认识,能模仿编程。

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9828
我在这个课程的目标是 学习基本函数的定义和调用
这个作业在那个具体方面帮助我实现目标 使用基本函数实现简化程序
参考文献 百度

1.PTA实验作业
1.1 题目名1

编写函数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;
}

1.1.1数据处理

数据表达:运用(整型)int定义sum,result 
数据处理:运用for循环语句;while语句判断n的值来确定输入值n 用取余(sum+=(n%10)*(n%10);)的算术式计算每一个数字,运用 除号(n=n/10;)来缩减n的值。
**函数参数:主函数:int main(),被调函数:int fun( int n ),被调函数的类型:整型,形参的名称:int n  类型:整形。

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
-15 The result is 1 n<0
0 The result is 1 n=0
15 The result is 0 n>0

1.1.4 PTA提交列表及说明

1.编译错误:开始对定义函数不是很清楚,错误把调用函数打上 ;
2.部分正确:取余计算逻辑错误
1.2 题目2

本题要求编写程序,根据公式Cnm=m!/((n−m)!n!)
​​算出从n个不同元素中取出m个元素(m≤n)的组合数。
建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。

输入格式:

输入在一行中给出两个正整数m和n(m≤n),以空格分隔。

输出格式:

按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。

1.2.1 数据处理

数据表达:整型定义(int)变量i ,double 定义 t。
数据处理:运用for循环语句累成(*)t 的值。
**函数参数:主函数:int main(),被调函数的名称:double f(int n),被调函数的类型:整型,形参的名称、类型:n;整型。

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
3 6 20 m==n/2
3 3 1 m==n
6 3 0 m>n

1.2.4 PTA提交列表及说明

1.多种错误:格式错误最多,发现输出result的格式要求不正确
2.部分正确:没有按题目要求double定义函数类型

2.代码互评
图1.
图2.
我的代码;图1 同学代码:图2

1.我感觉图2的代码计算性大,不是很好理解,比如他使用的(N-X*100)/100,让人不好理解

3.学习总结
3.1 学习进度条

这周所花的时间 代码行 学到的知识点简介
5 6个小时 190 while语句,break终止语句

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

总结:学习了基本函数的定义和调用基本使用方式![](https://img2018.cnblogs.com/blog/1809015/201910/1809015-20191026003118760-1470751798.png)
在定义函数中 定义的函数语句后要用 ; 调用函数语句不用 ; 
while,for语句可以使用break语句跳出循环

3.3.1 学习内容总结

3.3.2 学习体会

就是感觉学习是个过程,开始很是看不懂函数是咋个使用的,在一次次的百度过程中,我发现解决问题的能力在不断的提升,也有很多学习到还没有教的知识,其实老师上课说的都听得懂。
可是一到做题目就很懵,对我感觉懵是自然的,因为感觉有些题目还是缺少了数学思想,有些题目真的很像奥数题目,它添加了一下剧情在里面,让人没有那么容易理解,可是细细的品读下来
可以发现确实有些题目还是挺有意思的,虽然每次写博客园要写好久,但是这样的形式让我每天都有在坚持虽然有些时候很不想写博客园,但是这样的方式我感觉很不错,因为这样可以督促我们学习
不让我们学习专业的时候划水。学习其实是一件很长的路,唯有坚持吧!
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!