정렬 된 배열의 모드를 찾으려고 했으므로 다음 코드를 작성했다. 그러나, 그것은 저 배열에서 가장 큰 숫자를 제공합니다.모드를 찾기 위해 코드를 작성했지만 가장 큰 숫자를 알려 주겠다.
아무도 도와 줄 수 있습니까?
typedef struct mode {
int self;
int size;
} mode;
mode findmode(int *arr, int size) {
mode x;
int i = 0;
int count = 1;
for (i = 0; i < size; i++) {
if (i > 1 && i < size) {
if (arr[i] == arr[i - 1]) ++count;
if (arr[i] != arr[i - 1]) {
x.size = count;
x.self = arr[i - 1];
count = 0;
++count;
}
if (arr[i] != arr[i + 1]) {
if (count > x.size) x.size = count;
x.self = arr[i];
}
}
}
return x;
}
두 번째 마지막 'if'는 배열의 마지막 요소를 지나서 하나 액세스하고 마지막'if '다음의 두 문장은'{}'에 있어야합니까? –
하나를 {}에 포함 시키지만 원하는 방식으로 작동하지 않습니다. –
디버거 및/또는 디버그 인쇄 명령문을 사용하여 프로그램 실행을 추적하십시오. – kaylum