首頁 > 後端開發 > C++ > C語言中如何判斷一個數是否為質數?

C語言中如何判斷一個數是否為質數?

Susan Sarandon
發布: 2025-01-04 22:49:41
原創
917 人瀏覽過

How Can I Determine if a Number is Prime in C?

在 C 中確定數字的素數

您在 C 中尋求一種方法來辨別給定整數是否為素數。對外行人來說,質數是大於 1 且只能被自身和 1 整除的整數。

演算法

在深入研究 C 程式碼之前,讓我們先概述一下素數檢查演算法:

  1. 輸入數字。
  2. 迭代從 2 到輸入數字的平方根的所有整數。
  3. 如果這些整數中的任何一個整數除以輸入數字而沒有留下餘數,則輸入數字不是質數。
  4. 如果沒有找到約數,則輸入的數字是質數。

C實作

有了我們的演算法,讓我們將其翻譯成C:

#include <stdio.h>

int isPrime(int number) {
    if (number <= 1) return 0; // 0 and 1 are not prime
    int i;
    for (i = 2; i * i <= number; i++) {
        if (number % i == 0) return 0;
    }
    return 1;
}

int main() {
    int num;
    printf("Enter an integer: ");
    scanf("%d", &num);
    printf("%d is %s\n", num, isPrime(num) ? "prime" : "not prime");
    return 0;
}
登入後複製

解釋

  • 我們檢查邊緣數字小於或等於 1的情況,因為它們不是質數。
  • 使用循環,我們迭代從 2 到輸入數字的平方根的除數。
  • 如果任何除數產生餘數 0,則該數字不是質數。
  • 如果找不到約數,則聲明該數字

用法範例

輸入:13
輸出:13 是素數

輸入:9
輸出: 9 不是素數

以上是C語言中如何判斷一個數是否為質數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板