R7-4 输出2到n之间的全部素数 分数 20 单位 浙大城市学院
本题要求输出2
到n
之间的全部素数,每行输出10
个。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。
输入格式:
输入在一行中给出一个长整型范围内的整数。
输出格式:
输出素数,每个数占6位,每行输出10个。如果最后一行输出的素数个数不到10个,也需要换行。
输入样例:
10
输出样例:
2 3 5 7
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
参考题解:
#include <stdio.h>
#include <math.h>
int main()
{
long long num;
long long i, j;
int is_right;
int count = 0;
scanf("%lld", &num);
if(num < 2){
//
}else if(num == 2){
printf("%6d\n", num);
}else{
for(i = 2;i < num;i++){
is_right = 0;
for(j = 2;j <= sqrt(i);j++){
if(i % j == 0){
is_right = 1;
break;
}
}
if(is_right == 0){
printf("%6d", i);
count++;
if(count % 10 == 0){
printf("\n");
}
}
}
if(count % 10 != 0){
printf("\n");
}
}
return 0;
}