【C】质数(素数)判断函数

代码片段

int isPrime(int x){
   //一开始让ret=1,默认是素数
   int ret = 1;
   int i;
   if (x==1||x==0){
       //0和1不是素数
       ret = 0;
       return ret;
  }
   for (i=2;i<x;i++){
       if (x%i==0){
           //如果x能被任何小于它的正整数整除,就不是素数
           ret = 0;
           break;
      }
  }
   //返回是否为素数
   return ret;
}

ChatGPT的解释

这段代码定义了一个名为 isPrime 的函数,该函数用于判断一个整数 x 是否为素数。以下是对代码的解释:

  1. int ret = 1;:这一行代码声明并初始化了一个整数变量 ret,初始值为1。在函数开始时,默认假设 x 是素数,因此将 ret 设置为1。
  2. if (x == 1):这是一个条件语句,用于检查输入的整数 x 是否等于1。如果等于1,那么 x 不是素数,因此将 ret 设置为0。
  3. for (i = 2; i < x; i++):这是一个循环语句,从2开始迭代直到 x 前一个整数。在循环中,i 逐渐增加,用于检查是否有小于 x 的正整数可以整除 x
  4. if (x % i == 0):这是一个条件语句,用于检查 x 是否可以被 i 整除。如果可以整除,说明 x 不是素数,因此将 ret 设置为0,并立即退出循环(使用 break 语句)。
  5. 最后,函数返回 ret,它的值表示了输入的整数 x 是否为素数。

总结一下,这段代码通过检查是否存在能整除 x 的小于 x 的正整数来判断 x 是否为素数。如果存在这样的整数,那么 x 不是素数;否则,x 是素数。

© 版权声明
THE END
点赞15 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容