本题要求输出2
到n
之间的全部素数,每行输出10
个。素数就是只能被1和自身整除的正整数。注意:1不是素数,2是素数。
输入格式:
输入在一行中给出一个长整型范围内的整数。
输出格式:
输出素数,每个数占6位,每行输出10个。如果最后一行输出的素数个数不到10个,也需要换行。
输入样例:
10
结尾无空行
输出样例:
2 3 5 7
结尾无空行
answer
#include <stdio.h>
#include <math.h>
int prime(int n) {
int i,flag = 1;
if(n <= 1)
flag = 0;
for(i = 2;i <= sqrt(n);i++) {
if(n % i == 0) {
flag = 0;
break;
}
}
if(flag == 0)
return 0;
if(flag == 1)
return 1;
}
int main(){
int n,cnt = 1;
scanf("%d",&n);
for(int i = 2;i <= n;i++) {
if(prime(i)) {
printf("%6d",i);
if(cnt++%10 == 0)
printf("\n");
}
}
return 0;
}