C语言I博客作业04
一,作业头
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-3 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-3/homework/11491 |
这个作业的目标 | 加强对函数的了解,通过借鉴同学的代码找到自己的不足 |
学号 | 20209186 |
二、本周作业头
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://pintia.cn/problem-sets/1326075729675509760 |
这个作业的目标 | 学习并掌握自定义函数 |
这个作业在那个具体方面帮助我实现目标 | 从同学处得到不同的思路与看法 |
参考文献 | C Primer Plus |
1.PTA实验作业
1.1 题目名1
本题要求实现一个函数,计算N个整数中所有奇数的和,同时实现一个判断奇偶性的函数。
函数接口定义:
int even( int n );
int OddSum( int List[], int N );
其中函数even将根据用户传入的参数n的奇偶性返回相应值:当n为偶数时返回1,否则返回0。函数OddSum负责计算并返回传入的N个整数List[]中所有奇数的和。
1.1.1数据处理
数据表达:用了for循环与if判断得到通过输入的数据List[i]等整点型的奇偶性。
数据处理:用了for循环与if判断得出相应的结果。
**函数参数:
主函数:main() 整点型,实参N
被调函数:even() 整点型, 形参n(整点型)
OddSum()整点型, 形参N和List[100](整点型)**
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
1 \n 2 | 0 | 无奇数 |
5\n 3 5 7 9 0 | 24 | 奇数和为24 |
1.1.4 PTA提交列表及说明 | ||
1.编译错误:忘记打分号
1.2 题目2
本题要求编写程序,计算sum=2^1+ 2^2+ 23+⋯+2n 。可以调用pow函数求幂。
1.2.1 数据处理
数据表达:用了通过for循环得出sum等浮点型变量。
数据处理:通过被调函数进行for循环返回结果
**函数参数:请明确说明主调函数与被调函数的名称,被调函数的类型,实参与形参的名称、类型。
主函数:main()整点型 实参(n)
被调函数:fact()浮点型 形参(sum)**
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 | result = 6 | 结果为6 |
10 | result = 2046 | 结果为2046 |
1.2.4 PTA提交列表及说明 | ||
1.格式错误:result与等于号之间未空格。
2代码互评
·所选题目:
验证“哥德巴赫猜想”
数学领域著名的“哥德巴赫猜想”的大致意思是:任何一个大于2的偶数总能表示为两个素数之和。比如:24=5+19,其中5和19都是素数。本实验的任务是设计一个程序,验证20亿以内的偶数都可以分解成两个素数之和。
输入格式:
输入在一行中给出一个(2, 2 000 000 000]范围内的偶数N。
输出格式:
在一行中按照格式“N = p + q”输出N的素数分解,其中p ≤ q均为素数。又因为这样的分解不唯一(例如24还可以分解为7+17),要求必须输出所有解中p最小的解。
·同学代码:
·自己代码:
·不同:
1.他们的步骤更简单,而我的一些可以简化的未简化
2.明明可以只定义一个函数就可以完成而我自定义了两个函数,使代码看起来更复杂
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
10/2~8 | 25h | 560 | 二维数组的使用 | 做题时不太灵活使用二维数组 |
11/9~15 | 26h | 610 | 自定义函数 | 不能熟练调用函数 |
3.2 累积代码行和博客字数 | ||||
3.3 学习内容总结和感悟 | ||||
3.3.1 学习内容总结 | ||||
3.3.2 学习体会 | ||||
1.对于函数还有很多有待学习的地方,自定义函数可以简化许多步骤。 | ||||
2.二维数组的使用也不太熟练,做题总会卡壳。 | ||||
3.刷题还不够,许多知识也未掌握,还应学习更多的新知识。 |