C语言I博客作业05
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | 作业要求 |
我在这个课程的目标是 | 能独立运用c语言进行编程 |
这个作业在那个具体方面帮助我实现目标 | 发现问题帮助自己打牢基础 |
参考文献 | 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。
- 输入样例:
153
- 输出样例:
1
1.1.1数据处理
数据表达:定义sum,x为整型变量,sum是用sum += (x % 10) * (x % 10) * (x % 10)计算每个数立方的和,由于N不可变,就把值赋给了x;
数据处理:分为whlie if两大部分,其中whlie用于实现计算if用来决定函数返回值;
函数参数:主调函数的名称main,被调函数的名称func,被调函数的类型为整型,形参N。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
153 | 1 | 素数 |
100 | 0 | 不是素数 |
0 | 1 | 代码条件不够充分 |
1.1.4 PTA提交列表及说明
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最小的解。
输入样例:
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,
1.2.1数据处理
数据表达:函数prime定义变量,i为整型,函数Goldbach定义p,s为整型。
数据处理:运用了prime函数,if语句和循环结构。
函数参数:主调函数main
,被调函数prime
、Goldbach
,被调函数prime
为整型,定义的形参,被调函数Goldbach
为空,定义的形参。
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
89 100 | 89 is a prime number | 89是素数 |
0 0 | 无 | 直接结束 |
1.2.4 PTA提交列表及说明
2.代码互评
同学代码截图
自己代码截图
- 1.同学是把一个数都先求出来,再求值,我是利用循环求余一次循环求一个值的3次方;
- 2.同学用了函数
pow
; - 3.我是用循环求的,要改4位数5位数比较简单;
- 4.同学定义i为返回的值,我是直接判断是素数直接返回1,不是就返回2。
同学代码截图
自己代码截图
- 1. 同学用的是for循环,是先判断p是不是素数,再判断q;
- 2.prime函数条件是一样的,同学写的比较简便;
3.学习总结
1.3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第四周 | 5h | 28 | ||
第五周 | 7h | 46 | ||
第六周 | 8h | 59 | ||
第七周 | 6h | 37 | if条件语句 | |
第八周 | 9h | 55 | for循环结构,了解css | 对css的用法还不清楚 |
第九周 | 8h | 146 | 自定义函数 | 对函数返回值的路径还不明确 |
1.3.2 累积代码行和博客字数
时间 | 博客字数 | 代码行数 |
---|---|---|
第四周 | 330 | 2 |
第五周 | 782 | 26 |
第六周 | 1268 | 156 |
第七周 | 1860 | 314 |
第八周 | 2930 | 368 |
时间 | 博客字数 | 代码行数 |
---|---|---|
第九周 | 4730 | 422 |
1.3.3 学习内容总结和感悟
1.3.3.1 学习内容总结
1.3.3.2 学习体会
C语言是一门考验人韧性和逻辑思维的课程,在学习过程中不可避免的就是代码错误,以及编译错误,各方面的术语,逻辑符号,运算符号........等等都要求落入切入点,这也就是再编码过程中需要掌握的基础,有了这些基础知识的掌握和逻辑运用才能有一套好的编程技巧。