嗨如果初始化打印錯誤消息的函數,如果數組中的某些數字是相同的,我有問題。功能不初始化
#include<stdio.h>
#include<stdlib.h>
void printRepeating(int arr[], int size)
{
int i, j;
for(i = 0; i < size; i++)
for(j = i+1; j < size; j++)
if(arr[i] == arr[j])
printf("Wrong input. Same numbers in array!\n");
}
int main()
{
int arr[200],i;
int res, num;
while((res = scanf("%d", &num)) == 1)
{
arr[i++] = num;
if(num == 0){
break;
}
}
for(i = 0; i < arr[i]; i++)
printf("%d ", arr[i]);
printf("\n");
int arr_size = sizeof(arr[i])/sizeof(arr[0]);
printRepeating(arr, arr_size);
return 0;
}
如果我掃描1 2 3 1 4 5 0
,我的功能printRepeating
無法啓動不過我有一個數組中,爲什麼相同的數字1 1
?另一個問題是,當我輸入1 2 3 1 5 0
它只打印1 2 3
和例如我當我掃描1 2 3 4 5 6 7 8 9 0
它打印除0之外的所有數字。
問題是否解決?如果有答案,請將答案標記爲已接受。 @blackroad – Jarvis