这段代码里有两个空,希望能帮忙解答一下
#include <stdio.h>
#include "math.h"
void main() {
int m, k, i, n = 0;
for (m = 11; m <= 99; m++) {
k = ___1___ sqrt(m);
for (int i = 2; i <= k; i++) {
if (m % i == 0) {
break;
}
if (__2__) {
printf("%5d", m);
n = n + 1;
}
if (n % 10 == 0) {
printf("\n");
}
}
printf("\n");
}
}
供参考:
#include <stdio.h>
#include "math.h"
void main() {
int m, k, i, n = 0;
for (m = 11; m <= 99; m++) {
k = (int)sqrt(m); //___1___
for (i = 2; i <= k; i++) {
if (m % i == 0) {
break;
}
if (i >= k) { //(__2__)
printf("%5d", m);
n = n + 1;
//}
if (n % 10 == 0) //{
printf("\n");
}
}
//printf("\n");
}
}
(int)
i == k
k = 1 sqrt(m); 填:(int)
if (2) { 填:i>k
第一空 填 (int)来强转小数为整数类型
第二空 填 i == k 也就是说,除了1,只有他自己一个因子,输出素数