代码加注释
public class Subject23 {
/*
* 练习23:输出100以内的所有素数,每行显示5个;并求和。
*
* (素数:一个大于1的自然数,除了1和它本身外,不能被其他自然数整除)
*/
public static void main(String[] args) {
int count = 0; // 统计有多少个素数
int sum = 0; // 累计它的和
boolean flag; // 默认是素数
for (int i = 2; i <= 100; i++) {
// 重新将flag 设置为 默认值
flag = true;
// 取出每一个数 i ,看它是否满足素数的要求
for (int j = 2; j < i; j++) {
// 是否能够被 2 到 (i-1) 的某一个数整除
if (i % j == 0) { // 不是素数
flag = false;
}
}
// 如果是,输出素数
if (flag) {
System.out.print(i + "\t");
sum += i;
count++;
// 判断
if (count % 5 == 0) { // 有5个
System.out.println();
}
}
//如果是最后一次就输出所有的素数总和。
if (i == 100) {
System.out.println("总和为:" + sum);
}
}
System.out.println("总共" + count + "个素数!");
}
运行结果