这个作业属于哪个课程 |
C语言程序设计II |
这个作业要求在哪里 |
https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11493 |
我在这个课程的目标是 |
理解对函数的定义和调用 |
这个作业在哪个具体方面帮助我实现目标 |
PTA实践作业的函数题 |
参考文献 |
C语言程序设计(第三版) |
1.PTA实验作业 |
|
1.1使用函数求圆台体积 |
|
题目内容描述:本题要求实现函数求圆台体积,定义并调用函数volume_tc(r_lower, r_upper, h)计算下底半径为r_lower、上底半径为r_upper、高度为h的圆台的体积,函数类型是double。 |
|
1.1.1数据处理 |
|
数据表达:变量r_lower,r_upper,h,用来定义半径和高,v用来求体积,都为双精度浮点型 |
|
数据处理:伪代码如下: |
|
全局变量,使用宏定义#define PI 3.14159,自定义函数double volume_tc(double r_lower, double r_upper, double h),定义函数名为圆的体
积,在主函数中输入变量r_lower,r_upper,h,最后直接输出体积。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 |
输出数据 |
说明 |
10 30 5 |
6806.78 |
r_lower<r_upper |
30 10 5 |
6806.78 |
r_lower>r_upper |
1 1 2 |
6.28 |
r_lower=r_upper |
1.1.4 PTA提交列表及说明 |
|
|
|
|
|
1.编译错误:define为宏定义,在函数的调用中就不用重新定义,并且PI代表的就是一个数,double后不能直接接数字。 |
|
|
2.答案错误:1/3,1和3都是整型,所以1/3只会保留整数位的0,导致答案错误,可以在最后/3,或者1.0/3. |
|
|
1.2求组合数 |
|
|
题目内容描述:算出从n个不同元素中取出m个元素(m≤n)的组合数,建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。 |
|
|
1.2.1数据处理 |
|
|
数据表达:变量m,n用来定义输入的两个整数,为整型。变量result,product,用来表示组合数结果,用于保存乘积,都为双精度浮点型,i为循环变量,为整型。 |
|
|
数据处理:伪代码如下: |
|
|
自定义函数double fact(int n);定义函数用于求n的阶乘,返回主函数,输入m,n的值,通过result=fact(n)/(fact(m)*fact(n-m))求出组合数的值,最后直接输出答案。 |
|
|
1.2.2实验代码截图 |
|
|
|
|
|
1.2.3造测试数据 |
|
|
输入数据 |
输出数据 |
说明 |
----------------- |
--------------- |
--------------- |
2 7 |
result = 21 |
m<n |
7 2 |
result = 0 |
m>n |
7 7 |
result = 1 |
m=n |
1.1.4 PTA提交列表及说明 |
|
|
|
|
|
1.部分错误:编码result=fact(n)/(fact(m)*fact(n-m))时,分母需要打括号。 |
|
|
2.编译错误:主函数不需要循环,不用for语句。 |
|
|
2.代码互评 |
|
|
同学代码截图 |
|
|
|
|
|
自己代码截图 |
|
|
|
|
|
1.同学运用的是三目运算符,自己运用的是if语句。 |
|
|
2.同学自定义了一个int max(int a,int b)函数,用来比较整数大小,自己借助第三个变量来比较两个整数的大小。 |
|
|
3.学习总结 |
|
|
3.1 学习进度条 |
|
|
周/星期 |
这周所发的时间 |
代码行 |
---- |
---- |
---- |
10.19-10.25 |
九个小时 |
61 |
10.26-11.1 |
十个小时 |
102 |
11.2-11.8 |
十个小时 |
170 |
11.09-11.13 |
十个小时 |
212 |
3.2 累积代码行和博客字数 |
|
|
时间 |
博客字数 |
代码行数 |
----------------- |
--------------- |
--------------- |
第八周 |
620 |
61 |
第九周 |
700 |
102 |
第十周 |
1080 |
170 |
第十一周 |
1102 |
181 |
|
|
|
3.3 学习内容总结和感悟 |
|
|
首先学习了基本数据类型:整型和浮点型,利用它定义变量。接着学习了表达式和运算符,了解了优先级以及运算的方向问题,然后学习了顺序,选择,循环结构,利用这些结构写代码,练习熟练它们,最近学习了函数的定义和调用。感悟就是时间被安排的非常的充实,通过写博客园的作业认识到了自己哪里还存在不足,哪里还没有掌握,在这期间学会了使用app做图标,对电脑的操纵也熟练了起来。 |
|
|
3.3.1 学习内容总结 |
|
|
|
|
|
3.3.2 学习体会 |
|
|
博客园的作业虽然很繁琐,但是完成之后如释重负,整个人都会轻松很多,这一周又学习了新的知识,对之前学的语句有了更加清楚的了解,但是也通过作业发现自己和优秀的人的差距很大,希望在下一周的学习生活中能更加努力,缩小差距,多加练习,勤加巩固,对新的知识能接受更快,并且也深刻感受到C语言这门学科的不容易,要加油啊。 |
|
|