2

私はCが初めてで、ここのStackExchangeと他のすべてのソースで0は成功ですfalsereturn素数を出力するこの関数で、値が 1の場合にのみ素数を出力するのはなぜですか?

私が行った場合のように(is_prime(num) == 0)、素数は出力されませんが、単に言った場合、is_prime(num)自動的に(is_prime(num) == 1)?と見なされます。

これは私を混乱させました。値が0と1の間で切り替わるので明確にしてください。しかし、なぜ自動的にバイアスがかかるのでしょうか?

int is_prime(int num){
   int isPrime = 1;
   int i;

   for(i = 2; i <= sqrt(num); i++){
      if(num % i == 0){
         isPrime =  0;
      }
   }

   return isPrime;
}
4

2 に答える 2