题解 | #有序序列判断#
有序序列判断
https://www.nowcoder.com/practice/22e87f8a8d764a6582710f38d1b40c6e
#include <stdio.h> int is_ordered(int a[], int sz) { //升序判断 if(a[0]<=a[1]) { int j = 0; for(j=1; j<sz-1; j++) { if(a[j]>a[j+1])//不符合升序 { return 0; } } return 1; } //降序判断 else { int j = 0; for(j=1; j<sz-1; j++) { if(a[j]<a[j+1])//不符合降序 { return 0; } } return 1; } } int main() { int n = 0; scanf("%d", &n); int a[n]; int sz = sizeof(a)/sizeof(a[0]); int i = 0; for(i=0; i<sz; i++) { scanf("%d", &a[i]); } int ret = is_ordered(a,sz); if(ret == 1) { printf("sorted\n"); } else { printf("unsorted"); } return 0; }