int main()
{
    int i,arr[100],n,cnt1=0,cnt2=0;
    scanf("%d",&n);
    for(i=0;i<n;i++)
        scanf("%d",&arr[i]);
    for(i=0;i<n-1;i++)
    {
       if(arr[i]-arr[i+1]>=0)
           cnt1++;//降序计数
       else 
           cnt2++;//升序计数
    }
    if(cnt1==n-1||cnt2==n-1)//一共n个数,两两相减的到n-1个结果
        printf("sorted");
    else
        printf("unsorted");
}

上为依据总量n-1;下节约用时,可提前退出循环

int main()
{
    int i,a[100],n,cnt1=0,cnt2=0;
    scanf("%d",&n);
    for(i=0;i<n;i++){
        scanf("%d",&a[i]);
    if(i>0&&!(cnt1&&cnt2)){
        if(a[i]<a[i-1]) cnt1=1;
        else if(a[i]>a[i-1]) cnt2=1;
    }} printf("%s\n", (cnt1 && cnt2) ? "unsorted" : "sorted");}