C语言刷题(9):判断一个数是否为质数(素数)

算法思想:
若一个数除了1和本身外,不能被其他数整除,则该数为素数。为了减少时间复杂度,进行判断时,从2开始到sqrt(n)来依次判断是否能够整除。

#include <stdio.h>
#include <math.h>
void main()
{
    void prime(int a);
    int a;
    printf("Input a number:");
    scanf("%d",&a);
    prime(a);
}
void prime(int a)
{
    int flag,i;
    flag = 1;
    for(i = 2;i< sqrt(a) ;i++)
    {
        if(a % i == 0)
        {
            flag =0;
        }
    }
    switch(flag)
    {
        case 1 :printf("It is a prime");break;
        case 0 :printf("It is not a prime");break;
    }
}

发布了45 篇原创文章 · 获赞 7 · 访问量 1619

猜你喜欢

转载自blog.csdn.net/qq_38173631/article/details/103954745