这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11494 |
我在这个课程的目标是 | 学会函数的定义和调用,并且熟练掌握 |
这个作业在那个具体方面帮助我实现目标 | 作业在要求上的严格以及最后对自己学习上的总结 |
参考文献 | C primer plus |
1.PTA实验作业(20分/题)
1.1:求组合数
题目内容描述:本题要求编写程序,根据公式C = n!/(m!*(n-m)!)算出从n个不同元素中取出m个元素(m≤n)的组合数。
建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。
1.1.1数据处理
数据表达:定义了整形n,m;浮点型r,i,s;
数据处理:使用了for循环以及两个表达式r = fact(n)/(fact(m)*fact(n-m)),s = s* i。
函数参数:主函数以及自定义函数fact,形参n,实参i。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
3 4 | 4 | m大于n/2,且n-m==1 |
2 4 | 12 | m==n/2 |
6 6 | 1 | n==m |
1.1.4 PTA提交列表及说明
说明:编译错误:return 0后没有写分号。
格式错误:输出的答案和输出样例不同。
1.2: 求幂之和
本题要求编写程序,计算2的幂次方之和,可以调用pow函数求幂。
1.2.1 数据处理
数据表达:定义了整形变量i,浮点型变量n;
数据处理:使用了for循环,调用了pow函数。
函数参数:主函数,调用函数power,来自库函数<math.h> 实参是 n sum i 实参n sum 都是整数类型 i 是浮点类型。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
6 | 126 | sample等价 |
1 | 2 | n小于10 |
12 | 8190 | n大于10 |
1.2.4 PTA提交列表及说明
说明:答案错误:将result改成result = 0
编译错误:没有打分号
2.代码互评(5分)
同学的代码:
自己的代码:
比较:
1.自定义的函数类型一样,但是定义的变量不同。
2.结构风格不同,同学采用的是分支结构,if的判断语句。
3.我是先把fact()阶乘定义并用算是得到需要的fact()然后转运到主函数中运用的for循环得到阶乘结果,与同学刚好相反。
3.学习总结(15分)
3.1 学习进度条(5分)
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
1.本周学习了自定义函数,运用起来不熟练,还需要多加练习。
2.每一周的学习内容都在向更深奥的方向行进,以后一定要提前预习,多问多思考。
3.计算机的学习是熟能生巧,空余时间一定要多钻研,把知识都熟练掌握。