C语言I博客作业04
这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11496 |
我在这个课程的目标是 | 了解函数的定义,以及如何调用函数,学会模仿编程 |
这个作业在那个具体方面帮助我实现目标 | pta的作业 |
参考文献 | C语言程序设计课本,知乎,b站 |
学号 | 20209066 |
1.PTA实验作业(20分/题)
1.1 求组合数 (15分)
题目:本题要求编写程序,根据公式Cnm=m!(n−m)!/n!算出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。
1.1.1数据处理
数据表达:定义了sum,n,m,变量的值由题目得出,sum是浮点型,n,m是整型。
数据处理:for(int x=1;x<=n;x++)
sum1 = sum1*x;
result = fact(n)/(fact(m)*fact(n-m));
**函数参数:主调函数int main(),被调函数fact(int n),被调函数为浮点型,实参为i m n,也是整数类型,形参为int n,是整数类型 。
1.1.2实验代码截图
1.1.3 造测试数据
按照以下表格,输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明
输入数据 | 输出数据 | 说明 |
---|---|---|
4 4 | 1 | m等于n |
5 4 | 5 | m不等于n |
1.1.4 PTA提交列表及说明 | ||
根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。 | ||
提交列表说明: | ||
请按照如下要求说明提交列表,注意必须写明每个错误点,你是怎么解决的。此项没写好,本题0分 | ||
格式错误:未看清题目,等号两边忘记打空格。
1.2 求幂之和 (15分)
题目:本题要求编写程序,计算sum=2 1+2 2+2 3+⋯+2 n。可以调用pow函数求幂。
1.1.1数据处理
数据表达:用了i,n,sum 。i, n, sum被函数定义来的。都属于整数类型。
数据处理:scanf("%d",&n);
for(i=1;i<=n;i++)
sum=sum+pow(2,i);
**函数参数:主调函数int main();被调函数为math,被调函数属于整形;实参为i,n,sum,都为整数形,形参为pow(),整数型
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
7 | result = 254 | n<=10 |
11 | result=4094 | n>=10 |
1.1.4 PTA提交列表及说明 | ||
根据PTA提交列表,简要描述调试程序碰到的问题及解决办法。 | ||
提交列表说明: | ||
请按照如下要求说明提交列表,注意必须写明每个错误点,你是怎么解决的。此项没写好,本题0分 | ||
编译错误:y=0时,忘记打;
格式错误:未看清题目,等号两边未打空格
2.代码互评(5分)
同学代码截图
A同学
B同学
1:A同学写的代码很详细,数值也表达的很明确
2:B同学定义sum,保证可以储存数量够大的数值。
3:我的代码更为简洁,但是不一定能储存大数值
3.学习总结(15分)
3.1 学习进度条(5分)
日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较困惑的问题 |
---|---|---|---|---|
11/2-11/15 | 8h | 200 | 函数的定义 | 不懂它的涵义,还是不懂得如何操作 |
3.2 累积代码行和博客字数(5分) | ||||
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
1:对于函数有了一点了解,但是对于自定义函数还是不行,不懂如何定义
2:对于调试慢慢的在熟悉,了解大概如何操作,但是还是不知道如何找出中间的问题