demo4.c(求100以内的素数)

/*
*功能:求100以内的素数,全部打印出来
*目的:练习C语言(一个数不能被2~根号这个数的数整除,则是素数)掌握素数的判断
*/


#include <stdio.h>
#include <math.h>

int  prime(int num)
{
int j;
int n = 0;
int flag = 1;//定义标志

n = sqrt(num);//对当前值num开方

for(j = 2; j <= n; j ++)
{
if(num % j == 0)//判断若存在该数可以整除,则不是素数
{
flag = 0;
break;
}
}

if(flag)//未经过上面的置0
{
printf("%d  ",num); //打印出素数
}
return 0;
}




int main(int argc,char *argv[])
{
int i;
int num = 0;
int result = 0;

printf("input n:\n");
scanf("%d",&num);
printf("1~%d prime numbers:\n",num);//列出提示信息

for(i = 3;i <= num; i++)
{
prime(i);
}

printf("\n");
return 0;
}





/*测试结果:~#./test
*
* 3  5  7  11  13  17  19  23  29  31  37  41  43  47  53  59  61  67  71  73  79  83  89  97  

*/


/*小结:linux环境下没有链接math库,编译时需要加-lm
*编译命令:cc -o test 4.c -lm
*/
发布了61 篇原创文章 · 获赞 6 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/shayueqing/article/details/11783735