[英]Input Array in C and check for same values
如何輸入一個整數數組並檢查 2 對值是否相等,並且我還想刪除重復的值以在數組中只有 1 個相同的值? 我想打印沒有重復值的數組的最終結果。 我有這樣的想法:
int a[SIZE], i;
printf("Enter %d numbers:\n", SIZE);
for (i = 0; i < SIZE; i++) {
scanf_s("%d", a[i]);
if(i>=1){
if(a[i-1]==a[i]){
a[i-1]==a[i];
printf("%d", a[i-1]);
}
}
這個結果給了我我需要的但不完全的。 你能幫忙嗎?
#include<stdio.h>
int main() {
int arr[20], i, j, k, size;
printf("\nEnter array size:");
scanf("%d", &size);
printf("\nEnter Numbers:");
for (i = 0; i < size; i++)
scanf("%d", &arr[i]);
printf("\nList of Unique Numbers:");
for (i = 0; i < size; i++) {
for (j = i + 1; j < size;) {
if (arr[j] == arr[i]) {
for (k = j; k < size; k++) {
arr[k] = arr[k + 1];
}
size--;
} else
j++;
}
}
for (i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
}
輸入后,我們從第一個元素開始。 然后在那個 for 循環中,我們有另一個 for 循環來檢查該元素之后的元素。 如果有重復,我將其刪除。 希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.