C语言I博客作业05
这个作业属于那个课程 |C语言程序设计II
这个作业要求在哪里 |https://edu.cnblogs.com/campus/zswxy/SE2019-1/homework/9829
我在这个课程的目标是 |能熟练的使用C语言来解决数学问题
这个作业在那个具体方面帮助我实现目标 |提供案例给我练习,并可以判断对错
参考文献 |思维导图
1.PTA实验作业
1.1 水仙花数判断
本题要求实现一个函数,判断任一整数是否为水仙花数(必须是三位数,且数的每一位上数字的立方和与数本身相等)。例如153=13+53+3^3=1+125+27=153,而1或155则不是水仙花数。如果是水仙花数,则函数返回1,否则返回0.
1.1.1 数据处理
数据表达:
变量 | 变量的值 | 类型 |
---|---|---|
y1 | 百位数 | 整形 |
y2 | 十位数 | 整形 |
y3 | 个位数 | 整形 |
y | 数的每一位上的数字的立方和 | 整形 |
数据处理:表达式:y=y1y1y1+y2y2y2+y3y3y3;流程结构:顺序
**函数参数:
主调函数名称 | 被调函数的名称 | 被调函数的类型 | 实参名称 | 实参类型 | 形参名称 | 形参类型 |
---|---|---|---|---|---|---|
mian | func | 整形 | N | 整形 | y1,y2,y3,y | 整形 |
1.1.2 实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
549 | 0 | 不是水仙花数 |
153 | 1 | 是水仙花数 |
732 | 0 | 不是水仙花数 |
1.1.4 PTA提交列表及说明
1.编译错误:分号忘记打
2.部分正确:测试数据0,格式错误。0测试点输出问题,
3.部分正确:数学逻辑结构不对
1.2 使用函数验证哥德巴赫猜想
本题要求实现一个判断素数的简单函数,并利用该函数验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇素数之和。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。
1.2.1 数据处理
数据表达:
变量 | 变量的值 | 类型 |
---|---|---|
p | 输入的数字 | 整形 |
n | 输入的数字 | 整形 |
a | 形参,在循环结构中的步长 | 整形 |
数据处理:
表达式:p%i0 流程结构:分段结构,循环结构
表达式:prime(a)1&&prime(n-a)==1 流程结构:分段结构,循环结构
**函数参数:
主调函数名称 | 被调函数的名称 | 被调函数的类型 | 实参名称 | 实参类型 | 形参名称 | 形参类型 |
---|---|---|---|---|---|---|
mian | prime,Goldbach | 整形,文字型 | m, n, i, cnt | 整形 | i,a | 整形 |
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
56 100 | 56=3+53, 58=5+53, 60=7+53, 62=3+59, 64=3+61,66=5+61, 68=7+61, 70=3+67, 72=5+67, 74=3+71,76=3+73, 78=5+73, 80=7+73, 82=3+79, 84=5+79,86=3+83, 88=5+83, 90=7+83, 92=3+89, 94=5+89,96=7+89, 98=19+79, 100=3+97, | 不是素数,得出每个偶数的素数和 |
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, | 是素数,得出每个偶数的素数和 |
1423 1500 | 1423 is a prime number,1424=43+1381, 1426=3+1423, 1428=5+1423, 1430=3+1427, 1432=3+1429,1434=5+1429,,1436=3+1433, 1438=5+1433, 1440=7+1433, 1442=3+1439,1444=5+1439, 1446=7+1439,,1448=19+1429, 1450=3+1447, 1452=5+1447,1454=3+1451, 1456=3+1453, 1458=5+1453,,1460=7+1453, 1462=3+1459,1464=5+1459,,1466=7+1459, 1468=17+1451, 1470=11+1459, 1472=13+1459,1474=3+1471, 1476=5+1471, 1478=7+1471, 1480=29+1451, 1482=11+1471,1484=3+1481, 1486=3+1483, 1488=5+1483, 1490=3+1487, 1492=3+1489,1494=5+1489, 1496=3+1493, 1498=5+1493, 1500=7+1493, | 是素数,得出每个偶数的素数和 |
1.2.4 PTA提交列表及说明
1.编译错误:大括号忘记打
2.部分正确:得出每个偶数的素数和不对
3.部分正确:数学公式不对
2.代码互评
同学代码截图
陈洁
丁志雄
自己代码截图
- 我没有用到循环结构,虽然我占用的内存更多,但是我的结构更清晰,可见。直来直去。
3.学习总结
3.1 学习进度条
3.2 累积代码行和博客字数
644和8912
3.3 学习内容总结和感悟
3.3.1 学习内容总结
学习了自定义函数的用法,while和do-while结构的使用方法
3.3.2 学习体会
C语言是在实践中不断积累,出错,再改正中不断提高的。