c语言 输出全部小于n(n>=2正整数)的素数

c语言 输出所有小于n(n>=2正整数)的素数

质数又称素数。指在一个大于1自然数中,除了1和此整数自身外,不能被其他自然数整除的数。

设计一个程序,输入n输出所有小于n(n>2正整数)的素数

要求:素数每10个一行输出.

 

#include<stdio.h>
#include<math.h>
int prime(int x){
	int i;
	for(i=2;i<=(int)sqrt(x);i++)
		if(x%i==0)
			return 0;
	return 1;
}
void main(){
	int n,i,j;
	printf("n=");
	scanf("%d",&n);
	printf("小于等于%d的素数\n",n);
	if(n>2){
		printf("%4d",2);
		j++;
	}
	for(i=3;i<=n;i+=2)
		if(prime(i)==1){
			printf("%4d",i);
			if(j!=0 && ++j%10==0)
				printf("\n");
		}
		printf("\n");
}

 

效果:

c语言 输出全部小于n(n>=2正整数)的素数