高级语言程序设计第四次作业
这个作业属于:https://edu.cnblogs.com/campus/fzu/2026gjyycxsj
这个作业的要求:https://edu.cnblogs.com/campus/fzu/2026gjyycxsj/homework/16750
学号:0102600114
姓名:吴明桓
——
Part1 示例程序运行
1.

2.

——
Part2 课后练习题编写
1.
代码1:

代码2:

输出均为:

区别:do-while一定会执行一次,而while只要第一次进入循环时不满足条件就不会执行
2.
代码:

输出:

3.
代码:

结果:

4.
代码:

结果:

5.
代码:

结果:

6.
代码:

结果:

7.
代码:

结果:

8.
代码:

结果:

算法原理:
1. 素数判定原理
要判断一个数 (N) 是否为素数,只需要判断它能否被 (2) 到 (sqrt{N}) 之间的任何整数整除。如果都不能整除,它就是素数。
2. “打表 + 试除”策略
代码预置了 (1 \sim 100) 之间的所有 25 个素数。外层循环遍历 (100 \sim 200) 的每一个数 i。
对于每个 i,内层循环用预置的素数表去试除:
- 如果
i能被某个素数整除(i % primeList[j] == 0),说明它有除了 1 和自身之外的因数,立刻判定为非素数(sign = 0),并提前结束内层循环(break,提高效率)。 - 如果内层循环完整跑完,
sign依然保持为 1,说明它不能被任何预置素数整除,判定为素数并输出。
传统流程图:
![deepseek_mermaid_20261109_606cd6 (1)]()
NS图:
![ns-diagram-primes]()
Part3. 书本习题
6.1
代码:

输出:

6.5
代码:

输出:

6.7
代码:

输出:

6.10
代码:

结果:

6.13
代码:

输出:

6.16
代码:

输出:


6.18
代码:

输出:

7.1
代码:

输出:

7.2
代码:

输出:

7.4
代码:

输出:

7.5
代码:

输出:

7.7
代码:


输出:

总结:
- switch语句要注意每个分支进行break,否则后面分支的语句也会执行
- 单文件程序中,#define语句相比于const变量更加显眼



浙公网安备 33010602011771号