红雪人 2023-11-26 15:56 采纳率: 50%
浏览 4
已结题

关于c语言判断质数的不解

int isPrime(int n) 
{ 
    int i;
    for (i = 2; i <= n / 2; i++) 
    {
        if (n % i == 0) 
        {
            return 0;
        }
    }
    return 1;
}

请给我详细讲讲定义这个函数的逻辑,谢谢

  • 写回答

2条回答 默认 最新

  • 柯本 2023-11-26 18:10
    关注
    
    int isPrime(int n) 
    { 
        int i;
        for (i = 2; i <= n / 2; i++)  
        //对一个数,用2到n/2,【效率更高的是sqrt(n)】,对它进行整除
        {
            if (n % i == 0)  //若能整除
            {
                return 0; //它就不是素数,返回0
            }
        }
        return 1; //若所有的i都不能整除,它就是素数,返回1
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月27日
  • 已采纳回答 1月19日
  • 创建了问题 11月26日