阿摩線上測驗 登入

申論題資訊

試卷:98年 - 098年地方4等_資訊處理#32435
科目:程式設計
年份:98年
排序:0

題組內容

二、設計一 C 語言程式:

申論題內容

⑶若 X 為質數,則輸出“X is a prime number.”,否則輸出“X is not a prime number.”。 (5 分) (註:質數的定義為除了 1 及本身外,無其他因數)

詳解 (共 1 筆)

詳解 提供者:hchungw
#include <stdio.h>
#include <math.h>
int main() {
    int X, i;
    int isPrime = 1; // Assume X is a prime number
    // Prompt user for input
    printf("Please enter an integer greater than 1: ");
    scanf("%d", &X);
    // Check if X is greater than 1
    if (X <= 1) {
        printf("X must be greater than 1.\n");
        return 1; // Return an error code
    }
    // Determine if X is a prime number
    for (i = 2; i <= sqrt(X); ++i) {
        if (X % i == 0) {
            isPrime = 0; // Found a number that divides X, not a prime
            break;
        }
    }
    if (isPrime) {
        printf("%d is a prime number.\n", X);
    } else {
        printf("%d is not a prime number.\n", X);
    }
    return 0;
}
這個程式首先接收使用者輸入的整數X,並檢查它是否大於1。然後,它通過從2開始到sqrt(X)的迴圈來判斷X是否為質數。如果找到了能夠整除X的數,則將isPrime設置為0,表示X不是質數。最後,根據isPrime的值,程式會輸出X是或不是質數的相應英文消息。
這樣,當X是質數時,程式輸出:“X is a prime number.”;如果X不是質數,則輸出:“X is not a prime number.”。