这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/9830 |
我在这个课程的目标是 | 标准库函数和自定义函数的编译 |
这个作业在那个具体方面帮助我实现目标 | 加强的对编译自定义函数方面的思维能力 |
参考文献 | c语言程序设计 |
1.PTA实验作业
1.1 本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=1^3+5^3+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.
函数接口定义:
int func(const int N);
其中N是用户传入的参数。N的值不超过int类型的范围。如果参数N是水仙花数,则返回1,否则返回0。
1.1.1数据处理
数据表达:设置了x,y,z为自变量,x,y,z分别代表一个三位数上的百十个位数,用的是整型变量
数据处理:运用了if-else语句,循环结构和分支结构
函数参数:int main()主函数名称,为整型函数,形参N;xingint func(const int N);为整形函数,实参x,y,z
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
163 | 0 | 各位数字的立方和与数本身不等,不是水仙花数 |
315 | 0 | 各位数字的立方和与数本身不等,不是水仙花数 |
370 | 1 | 各位数字的立方和与数本身等,是水仙花数 |
1.1.4 PTA提交列表及说明
提交列表说明:
Q1:标点符号:导致
Q2:用pow来表示函数立方错误,改成单个相乘
Q3:英文字母错误。。。
Q4:原因未知,直接重新编码一次
1.2 本题要求实现一个判断素数的简单函数,并利用该函数验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇素数之和。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。
函数接口定义:
int prime( int p );
void Goldbach( int n );
其中函数prime当用户传入参数p为素数时返回1,否则返回0;函数Goldbach按照格式“n=p+q”输出n的素数分解,其中p≤q均为素数。又因为这样的分解不唯一(例如24可以分解为5+19,还可以分解为7+17),要求必须输出所有解中p最小的解。
1.2.1 数据处理
数据表达:设置了很多整型函数,n的素数分解,用户传入参数p,i,j为运算中的值
数据处理:n=p+q,等等(p%i == 0),运用了分支结构和循环结构,自定义函数
**函数参数:#include <math.h>主函数,形参p,void Goldbach(int n)被调用函数,实参i,j,都为整型函数
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
8 | 3 5 | 不是素数,p的最小解n=p+q |
56 | 3 53 | 不是素数,p的最小解n=p+q |
100 | 3 97 | 不是素数,p的最小解n=p+q |
1.2.4 PTA提交列表及说明
提交列表说明:
Q1:输入字符,符号,运算错误,。。。在其他编译器是编译
Q2:参照书上事例进行尝试。。。。
Q3:符号输入错误,更改。。。
Q4:。。。。
Q5:被调用函数未设置返回,去Dew-c++j进行编译。。。(|| _ ||)
Q6:手动输入的时候不该空格的地方空格。。。
2.代码互评
同学代码截图
自己代码截图
互评:图一很被调用函数名称,函数运用,格式有些不同。。看的有点眼花。。但思路明确
图二符号,函数运用不同,被调用函数依旧在前
3.学习总结
3.1 学习进度条
周/日期 | 周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第九周 | 32h | 153 | 自定义函数的编辑,程序的包装 | 依旧是函数的运用,与意义 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
从开始学习c语言到现在,由陌生到熟悉,越发现c语言,编程的乐趣与困难,越觉的自己学习的东西太少,空白越大,见过很多大佬级别人物的编码,我感觉自己还有很长的路要走
听课的时候感觉很简单,但自己操作的时候问题很多,待自己去一一解决