这个作业属于那个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-3 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-3/homework/11492 |
我在这个课程的目标是 | 学好课程中的知识并加以巩固,再逐渐拓宽知识面 |
这个作业在那个具体方面帮助我实现目标 | 能巩固我的基础使我在日后的学习中更好克服困难 |
参考文献 | C语言程序设计(第三版) |
学号 | 20209167 |
1.PTA实验作业
1.1
本题要求编写程序,根据公式C
n
m
=
m!(n−m)!
n!
算出从n个不同元素中取出m个元素(m≤n)的组合数。
建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。
输入格式:
输入在一行中给出两个正整数m和n(m≤n),以空格分隔。
输出格式:
按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。
输入样例:
2 7
输出样例:
result = 21
1.1.1 数据处理
数据表达:根据题目要求输入m,n;m和n都属于整型参数;自定义一个求阶乘的函数fact(int n):(double型);再设定参数v1,v2,v3,表示m,n和n-m的阶乘值,并且它们都属于浮点型(double型)。
数据处理:定义函数中用到product和for语句计算阶乘;前面用v1,v2,v3,来分别表示题干中三个阶乘的值,调用fact(int n)函数;结果返回主函数int main();最后用printf语句输出答案,这里注意等号前后都有一个空格。
1.1.2 实验代码截图
1.1.3 输出你的程序面向各种测试数据结果
输入数据 | 输出数据 | 说明 |
---|---|---|
8 12 | 495 | 测试计算正确 |
4 9 | 126 | 测试计算正确 |
-1 6 | 0 | 负数阶乘没有意义 |
1.1.4 PTA提交列表及说明
(1)刚开始没有注意到输出结果的等号前后都有一个空格。
(2)将v1,v2,v3定义成了整型参量,导致答案错误。
(3)老毛病就是忘记打分号。
1.2
7-1 C程序设计 习题 7.3 函数实现两个数的最大值 (2分)
用函数编程计算两个整数的最大值,在主函数中调用该函数计算并输出从键盘任意输入的两整数的最大值。
输入格式:
用户从键盘任意输入的两个整数,以空格分隔。
输出格式:
两个整数中的最大值
输入样例:
在这里给出一组输入。例如:
3 9
输出样例:
在这里给出相应的输出。例如:
9
1.2.1 数据处理
数据表达:根据题目要求输入m,n;调用了一个自定义函数fact(int n,int m)(double型);定义整型形参 t 用于自定函数中变量代换;result,整型变量,为最后输出的结果。
数据处理:调用fact(int n,int m)函数达到输出两整数中较大的一个;用到了 if 语句将其中较大的值输出,其中用t代换达到目的,后面返还 t 的值到主函数int main();最后用printf语句输出结果。
1.2.2数据代码截图
1.2.3 输出你的程序面向各种测试数据结果
输入数据 | 输出数据 | 说明 |
---|---|---|
-1 2 | 2 | 一正一负 |
5 2 | 5 | 两个正数 |
-1 -2 | -1 | 两个负数 |
1.2.4 PTA提交列表及说明
(1)格式问题:定义函数时将double(int n,int m)打成double(int n,m)导致系统无法识别m,将m视为未定义;
(2)自定义函数中用t代换值的过程中,多打了个printf("%d",t);导致多输出了一次,答案错误。
2. 代码互评
同学代码
自己代码
- (1)习惯在计算的时候定义变量给几项赋值,而且还用到了pow函数,而同学好像更省事,显得代码更简约。
- (2)习惯在if else语句后只有一个语句的时候,省略大括号{}。
- (3)另外排版方面也有所不同,可能与个人风格有关,毕竟每个人想法各有不同。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
4/8-4/15 | 7.5小时 | 396 | 自定义函数的调用 | 自定函数该如何灵活调用 |
3.2 累计代码行和博客字数
3.3 学习内容总结和感悟
3.3.1请用思维导图的形式将到目前为止所学的内容进行整理。
采用专业的思维导图软件 XMind
3.3.2 学习体会
(1)在学习过程中要多于同学交流自己的想法和思路。
(2)要注意细节,细节决定一切。
(3)往后的学习只会越来越复杂,巩固基础,课后多练习是关键,预习也很重要。
(4)端正态度,不懂就问。