高级语言程序设计第四次作业

这个作业属于:https://edu.cnblogs.com/campus/fzu/2026gjyycxsj

这个作业的要求:https://edu.cnblogs.com/campus/fzu/2026gjyycxsj/homework/16750

学号:0102600114

姓名:吴明桓

——

Part1 示例程序运行

1.

IMG_0014

2.

IMG_0014

——

Part2 课后练习题编写

1.

代码1:
image

代码2:
image

输出均为:
image

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

2.

代码:
image

输出:
image

3.

代码:
image

结果:
image

4.

代码:
image
结果:
image

5.

代码:
image
结果:
image

6.

代码:
image
结果:
image

7.

代码:
image
结果:
image

8.

代码:
image
结果:
image
算法原理:
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

代码:
image
输出:
image

6.5

代码:
image
输出:
image

6.7

代码:
image
输出:
image

6.10

代码:
image
结果:
image

6.13

代码:
image
输出:
image

6.16

代码:
image
输出:
image
image

6.18

代码:
image
输出:
image

7.1

代码:
image
输出:
image

7.2

代码:
image
输出:
image

7.4

代码:
image
输出:
image

7.5

代码:
image
输出:
image

7.7

代码:
image
image
输出:
image


总结:

  • switch语句要注意每个分支进行break,否则后面分支的语句也会执行
  • 单文件程序中,#define语句相比于const变量更加显眼
posted @ 2026-11-09 21:59  huicat  阅读(2)  评论(0)    收藏  举报