C語(yǔ)言怎么輸出不同的數(shù)

小億
256
2023-11-03 11:42:52

在C語(yǔ)言中,輸出不同的數(shù)可以使用條件語(yǔ)句和循環(huán)語(yǔ)句來(lái)實(shí)現(xiàn)。以下是兩種常見的方法:

方法一:使用if語(yǔ)句和數(shù)組

#include <stdio.h>

int main() {
    int nums[] = {1, 2, 3, 4, 5, 5, 6, 6, 7, 8, 8, 9};  // 輸入的數(shù)組
    int length = sizeof(nums) / sizeof(nums[0]);  // 數(shù)組長(zhǎng)度

    for (int i = 0; i < length; i++) {
        int flag = 0;  // 標(biāo)志位,用于判斷是否為重復(fù)數(shù)
        for (int j = 0; j < i; j++) {
            if (nums[i] == nums[j]) {
                flag = 1;
                break;
            }
        }
        if (flag == 0) {
            printf("%d ", nums[i]);
        }
    }

    return 0;
}

方法二:使用if語(yǔ)句和標(biāo)志位

#include <stdio.h>

int main() {
    int nums[] = {1, 2, 3, 4, 5, 5, 6, 6, 7, 8, 8, 9};  // 輸入的數(shù)組
    int length = sizeof(nums) / sizeof(nums[0]);  // 數(shù)組長(zhǎng)度
    int flag = 0;  // 標(biāo)志位,用于判斷是否為重復(fù)數(shù)

    for (int i = 0; i < length; i++) {
        flag = 0;  // 每次循環(huán)重置標(biāo)志位
        for (int j = 0; j < i; j++) {
            if (nums[i] == nums[j]) {
                flag = 1;
                break;
            }
        }
        if (flag == 0) {
            printf("%d ", nums[i]);
        }
    }

    return 0;
}

以上兩種方法都可以輸出不同的數(shù)。其中,方法一使用了一個(gè)數(shù)組來(lái)保存已經(jīng)輸出過(guò)的數(shù),然后每次新獲取一個(gè)數(shù)時(shí),都與數(shù)組中的已有數(shù)進(jìn)行比較,如果沒(méi)有重復(fù),則輸出。方法二則使用一個(gè)標(biāo)志位來(lái)標(biāo)記是否為重復(fù)數(shù),如果不是重復(fù)數(shù),則輸出。兩種方法的時(shí)間復(fù)雜度都是O(n^2),其中n為數(shù)組長(zhǎng)度。

0