这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/9826 |
我在这个课程的目标是 | 熟悉基本C语言的运用 |
这个作业在那个具体方面帮助我实现目标 | 学习掌握自定义函数,学习函数编译和while语句 |
参考文献 | 《C语言程序设计》 |
1.PTA实验作业
1.1水仙花数判断
判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=1^3+5^3+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.
1.1.1
数据表达:本题使用了整型变量x,y,z;都是通过赋值得到。
数据处理:本题使用了if else选择语句和pow()函数;
表达式为:N=x^3+y^3+z^3;
流程结构:x = N / 100;y = N / 10 % 10;z = N %10。
函数参数:主调函数:int main();被调函数:int func(const int N);
被调函数的类型:整形函数;
实参:N;形参x,y,z;类型:两者都是整形。
1.1.2实验代码截图
1.1.3造测试数据
输入数据 | 输出数据 | 说明 |
153 | 1 | 题目说给数据 |
999 | 0 | 最大三位数 |
100 | 0 | 最小三位数 |
761 | 0 | 随机三位数 |
12 | 0 | 不属于三位数 |
1.1.4PTA提交列表及说明
提交列表说明
1.部分正确:第八行中%错写成/;
2.编译错误:将六七行“;”删去;
3.部分正确:将“;“改回;
4.答案正确:发现错误,/与%含义不同,改正;
5.部分正确:将第六行/改为%,想试试结果是否一致;
6.部分正确:改回原答案。
1.2 题目2使用函数验证哥德巴赫猜想
本题要求实现一个判断素数的简单函数,并利用该函数验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇素数之和。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。其中函数prime当用户传入参数p为素数时返回1,否则返回0;函数Goldbach按照格式“n=p+q”输出n的素数分解,其中p≤q均为素数。又因为这样的分解不唯一(例如24可以分解为5+19,还可以分解为7+17),要求必须输出所有解中p最小的解。
1.2.1 数据处理
数据表达:本题使用了整型变量:result,i,x;i和x都是通过程序赋值而来,result是程序的返 回值;
数据处理:本题使用了if else选择语句和for循环语句;
表达式:对p进行整除,判断是不是素数;
函数参数:主调函数:int main();被调函数:int prime( int p ),void Goldbach(int n);
被调函数的类型:整形函数;
实参:n,p; 形参:result,i,x; 类型:两者都是整形。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
89 100 | 89 is a prime number 90=7+83, 92=3+89, 94=5+89, 96=7+89, 98=19+79 100=3+97 |
题目所给数据 |
7 12 | 7 is a prime number 8=3+5, 10=3+7, 12=5+7 |
随机数 |
99 100 | 100=3+97 | 两连续数 |
1.2.4 PTA提交列表及说明
1.编译错误:将return 和result写混了;
2.格式错误:没注意大小写,把“:”当做“:”;
3.编译错误:没发现是符号写错,将头文件删除;
4.格式错误:改回第一次输入时代码,并修改符号;
5.格式错误:printf后语句中多了空格;
6.答案正确:询问同学后更正,并查找资料两者的区别。
2.代码互评
2.1题目6-3
同学代码截图
自己代码截图
差异:
1.同学使用a*a*a来进行运算,而我使用了pow函数语句。
2.2题目6-6
同学代码截图
我的代码截图
1.同学使用了两个变量;我定义了三个变量来解决问题;
2.同学使用(int)sqrt函数,我使用了数学符号运算;
3.学习总结
3.1学习进度条
周数/日期 |
这周所花时间 |
代码行 |
学到的知识简介 |
目前比较迷惑的问题 |
第五周/10.26 | 12h | 122 | 熟悉自定义函数的格式和while循环语句 | 对新出现的一些定义不理解 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
总对C语言的完全不了解,到接触。虽然相处的时间不长,但是我已经感觉到自己对它深深的兴趣,虽然每次写作业时处处都是困难,理解能力差让我学习新知识时需要花费大量时间,但是当我解决掉一个问题时那种喜悦与满足感是什么也代替不了的。做PTA作业对我来说是一场磨练,挑战自己的细心与能力,学会遇到问题时慢慢沉下心去查找资料。C语言固然不简单,但有兴趣没什么难的,有信心。