这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-1 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11493 |
这个作业的目标 | 学习自定义函数 |
学号 | 20208942 |
本周作业头
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-1 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11493 |
我在这个课程的目标是 | 学会自定义函数 |
这个作业在那个具体方面帮助我实现目标 | 回忆课堂,写之前构建思路,百度,问同学 |
参考文献 | 《C Primer Plus》,c语言程序设计(第三版) |
1.PTA实验作业(20分/题)
1.1 求组合数 (15分)
本题要求编写程序,根据公式不同元素中取出m个元素(m≤n)的组合数。
建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。
1.1.1数据处理
数据表达:用了变量n,m,i,result;n,m,result都是已知条件给的,i为规定循环次数的变量;n,m,i都为整数型,result为浮点型
数据处理:数据用到的表达式为result=fact(n)/(fact(m)*fact(n-m));流程结构:for循环。
函数参数:主调函数为main函数,被调函数为fact函数;被调函数为double类型,实参n,m,形参n,都为整数型。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 7 | 21 | m<n |
9 0 | 0 | m>n |
0 0 | 1 | m=n |
0 8 | 1 | 当m<n且为0时,结果都为1 |
1.1.4 PTA提交列表及说明
根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。
提交列表说明:1.编译错误:没有注意到给出的数据是2 7,在输入时把n放在了m前面。
1.2 求幂之和 (15分)
本题要求编写程序,计算。可以调用pow函数求幂。
1.2.1 数据处理
数据表达:用了变量n,i,sum,result;n,sum,result都是已知条件给的,i为规定循环次数的变量;n,i都为整数型,sum, result为浮点型。
数据处理:数据用到的表达式为sum=sum+pow(2,i);流程结构:for循环。
只有主函数没有主调函数与被调函数。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
5 | 62 | 结果为2的1次加到2的5次 |
1.2.4 PTA提交列表及说明 | ||
![]() |
||
![]() |
||
提交列表说明:1.编译错误:分号忘打。 |
2.格式错误:printf输出的reslut=%d格式不对,没有在等号两端加空格。
2.代码互评(5分)
同学代码截图
自己代码截图
代码不同地方。
1.第一份用了while循环,学在了我们前面。
2.但第一份没有考虑到m=0,n>0的情况。
3.第二份让我觉得巧的地方是在printf里面直接把sum的值赋给result。
4.但第二份没有考虑到sum的返回值是double类型的,应该把printf里的%d变成%.0f。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
8/19-8/25 | 10 | 180 | C语言的发展史及特点,简单编程 | 无 |
9/26-9/1 | 12 | 300 | 用程序语言解决一些简单的数学运算 | scanf作为输入函数为什么要地址符,而printf函数不要 |
10/2-10/8 | 13 | 400 | 了解简单的循环结构 | 沙漏里的循环套循环怎么弄 |
11/10-11/15 | 12 | 350 | 自定义函数 | while循环 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
这一周对C语言这门课程已经有了一个大概的知识体架,也明确了自己要学些什么东西,尽管在学习的过程中还是犯了不少低级错误,但这种错误逐渐在减少,我对于在写编程前也有了自己要注意的地方,另一个就是感受到了同一个题也会有很多种解法,我原来的思维总是被困在书上,但现在我会思考用另一种方式可不可以解决这个问题,我还会翻阅更多大佬的对于同一个题目的不同看法,尽管还有很多看不懂,我也会通过他们的代码在百度一点一点的搜索,然后积累下来。