根据数组第一个值与最后一个值的比较结果做判断。
#include <stdio.h>
int main() {
int n;
scanf("%d\n", &n);
int arr[n];
for (int i = 0; i < n; ++i) {
scanf("%d", &arr[i]);
}
int sorted = 1;
if (arr[0] <= arr[n - 1]) {
for (int i=1; i<n; ++i) {
if (arr[i-1] > arr[i]) {
sorted = 0;
break;
}
}
} else {
for (int i=1; i<n; ++i) {
if (arr[i-1] < arr[i]) {
sorted = 0;
break;
}
}
}
if (sorted) {
printf("sorted\n");
} else {
printf("unsorted\n");
}
return 0;
}

京公网安备 11010502036488号