#include <iostream>
using namespace std;
const int SIZE = 100;
int main() {
int p[SIZE];
int n, tot, i, cn;
tot = 0;
cin >> n;
for (i = 1; i <= n; i++)
p[i] = 1;
for (i = 2; i<= n; i++){
if (p[i] == 1) tot++;
cn = i * 2;
while (cn <= n) {
p[cn] = 0;
cn += i;
}
}
cout << tot << endl;
return 0;
}
判断题,答案请填写T,F,T表示对,F表示错
1. 删掉程序第9、10行,程序输出结果不变(
)。
2. 可以将第5行数组p的类型定义从int型改为bool型(
)。
3. 当n输入为7时,程序第15行总共执行了3次(
)。
选择题,请填写答案A,B,C,D
4. 输入10,程序运行到19行时,tot的值是(
)。
A. 2 B. 3 C. 4 D. 5
5. 输入30,输出结果是(
)。
A. 9 B. 10
C. 11 D. 12
6. 整个程序的功能可以描述为(
)。
A. 统计1到n之间质数的个数
B. 统计1到n之间合数的个数
C. 统计1到n之间所有数字的个数
D. 统计1到n之间所有2的倍数的个数