Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C配列内の重複要素を削除するプログラム


配列に存在する同じ番号を削除してみてください。結果の配列は、一意の要素で構成されます。

配列内の重複要素を削除するロジック 次のとおりです-

for(i=0;i<number;i++){
   for(j = i+1; j < number; j++){
      if(a[i] == a[j]){
         for(k = j; k <number; k++){
            a[k] = a[k+1];
         }
         j--;
         number--;
      }
   }
}

重複を削除した後に番号を表示するロジックは次のとおりです-

for(i=0;i<number;i++){
   printf("%d ",a[i]);
}

プログラム

以下は、配列内の重複する要素を削除するCプログラムです。

#include<stdio.h>
#include<stdlib.h>
int main(){
   int a[50],i,j,k, count = 0, dup[50], number;
   printf("Enter size of the array\n");
   scanf("%d",&number);
   printf("Enter Elements of the array:\n");
   for(i=0;i<number;i++){
      scanf("%d",&a[i]);
      dup[i] = -1;
   }
   printf("Entered element are: \n");
   for(i=0;i<number;i++){
      printf("%d ",a[i]);
   }
   for(i=0;i<number;i++){
      for(j = i+1; j < number; j++){
         if(a[i] == a[j]){
            for(k = j; k <number; k++){
               a[k] = a[k+1];
            }
            j--;
            number--;
         }
      }
   }
   printf("\nAfter deleting the duplicate element the Array is:\n");
   for(i=0;i<number;i++){
      printf("%d ",a[i]);
   }
}

出力

上記のプログラムを実行すると、次の結果が得られます-

Enter size of the array
10
Enter Elements of the array:
1 1 2 4 3 5 6 5 7 1
Entered element are:
1 1 2 4 3 5 6 5 7 1
After deleting the duplicate element, the Array is:
1 2 4 3 5 6 7

  1. JavaScriptを使用して同じ配列内の配列の要素を複製するにはどうすればよいですか?

    以下は、同じ配列内の配列の要素を複製するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" > <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>   &nbs

  2. Cプログラムで、配列内の最後に出現する要素を相対的な順序で出力します。

    要素を含む配列a[]が与えられ、タスクは、リスト内の指定された要素の最後の出現を出力することです。ここでは、重複する要素を削除するだけでなく、配列内の要素が最後に発生したときの順序を維持する必要があります。 6つの要素の配列があり、いくつかの重複する値、つまり{1,3、2、3、1、2}も含まれているため、結果は312の形式になります。 例 Input: a[]={4,2,2,4,1,5,1} Output : 2 4 5 1 アルゴリズム START Step 1-> Declare function void printelements(int a[], int n) &nbs