作业04

1.作业头

这个作业属于哪个课程 c语言程序设计
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-3/homework/11491
这个作业在那个具体方面帮助我实现目标. pta作业
参考文献 《C语言程序与设计》,哔哩哔哩,百度
这个作业的目标 学会使用其他的函数和学习制作思维图,拓宽自己的知识层面
学号 20209063

1.PTA实验作业(20分/题)

1.1 求组合数

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

1.1.1数据处理)

数据表达:我用了s,m,n,result,定义s,m,n;用于计算。
数据处理:调用fact函数用于计算阶乘,在运用for进行循环计算。
函数参数:主函数是int main;调用函数:double fact(int n).

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
3,7 21 m<n
5,2 0 m>n
5,5 1 m=n

1.1.4 PTA提交列表及说明

说明
1.一开始一直以为要设置三个for循环和三个fact阶乘试来写这个题。
2.后面看书之后,还看了买的那本资料书,才发现只要设置一个fact,其他的用fact()去表示就可以循环计算出来。

1.2.1数据处理

数据处理:运用了数学函数<math.h>,用整型函数int定义n,i;用浮点型double定义result;最后用了pow去进行计算幂次方。
数据处理:调用pow计算幂;然后运用for循环。
函数参数:主函数:int main(),调用函数double pow;整型变量n,i;浮点型变量result.

1.2.2实验代码截图

1.2. 3造测试数据

输入数据 输出数据 说明
5 62 n<10
12 8190 n>10
0 0 n=0

1.1.4 PTA提交列表及说明

说明

之所以错误是因为自己又犯了以前的错误,没有在定义完变量之后用scanf去找到变量地址,后面补上后就直接正确。

同学代码截图

我的代码

比较

1.第一个同学他是用的三个for循环来计算出三个阶乘的值,最后用这三个值去计算出结果。

2.第二个同学是先调用了double fact(),然后用do,while结构去进行循环得到fact(),最后用主函数,进行for循环得到结果。

3.我自己的则是先把fact()阶乘定义并用算是得到需要的fact()然后转运到主函数中运用的for循环得到阶乘结果。

3.学习总结

3.1学习进度条

周/日期 这周所花的时间 代码行 学的知识点简介 目前比较迷惑的问题
10/12—10/18 27h 100 刚刚入门c语言,学习到printf函数 不知道怎么去分行
10/24——11/1 25h 150 学到了一些函数计算 不知道求和的本质意义
11/2——11/7 40h 258 调试,for循环,sum求和 for循环的实质方面,不能灵活应用
11/8 ——11/15 27h 280 学到了阶乘和pow 不理解应用fact()然后在调入到主函数中进行for循环得到答案的实质

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

学习内容

上面的分支图表上的内容大部分都学习了而且较熟悉,只有while这里会没有进行多的训练,姜老师上课讲的复习了一遍加深自己的印象和理解。

感悟

1.在学习c语言中最主要还是要靠自己去主动学习,光听老师讲是不行的,课后要自己多去练,多去动手写代码。
2.每次在写作业时和写课后代码时,总是会有一些关键点不知道,但看书之后就恍然大悟,所以,在写之前要提前i复习和预习课本内容,反复练习加深自己印象。
3.我们这个专业就是要靠时间去积累多去写才有进步,所以我要抓住空余时间多学习,不能用玩来消磨时间。

posted @ 2020-11-15 02:07  北顾笙  阅读(129)  评论(2编辑  收藏  举报