C程式查詢陣列中唯一的元素。


問題

使用兩個迴圈查詢陣列中不重複的元素。一個用於當前元素,另一個用於檢查元素是否已存在於陣列中。

解決方案

考慮以下示例:

15, 15, 16, 15, 13, 15

這裡,陣列中不重複的元素是 16 和 13。

演算法

請參考以下查詢陣列中唯一或不重複元素的演算法。

步驟 1 - 宣告一個數組並在執行時輸入陣列元素。

步驟 2 - 開始遍歷陣列並檢查當前元素是否已存在於陣列中。

步驟 3 - 如果它已存在於陣列中,則移動到陣列中的下一個元素並繼續。

步驟 4 - 如果沒有,則輸出該元素作為不重複的元素。

示例

以下是查詢陣列中唯一或不重複元素的 C 程式:

 線上演示

#include <stdio.h>
#include <stdlib.h>
int uniqueEle(int array[], int n){
   int i,j;
   int count = 1;
   for(i = 0; i < n; i++){
      for(j = 0; j < n; j++){
         if(array[i] == array[j] && i != j)
         break;
      }
      if(j == n ){
         printf("
unique elements in an array is [%d] : %d
"
,count,array[i]);          ++count;       }    }    return -1; } int main(){    int n,i;    printf("
Enter no: of elements : "
);    scanf("%d",&n);    int array[n];    printf("
enter the array elements : "
);    for(i = 0; i < n; i++){       scanf("%d",&array[i]);    }    uniqueEle(array, n);    return 0; }

輸出

執行上述程式時,會產生以下輸出:

Run 1:
Enter no: of elements: 5
enter the array elements :
11
11
15
16
13
unique elements in an array is [1] : 15
unique elements in an array is [2] : 16
unique elements in an array is [3] : 13
Run 2:
Enter no: of elements: 4
enter the array elements : 11
12
11
11
unique elements in an array is [1] : 12

更新於: 2023年9月14日

31K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告