题解 | #有序序列判断#

有序序列判断

https://www.nowcoder.com/practice/22e87f8a8d764a6582710f38d1b40c6e

#include <stdio.h>
int is_ordered(int a[], int sz)//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[50];
    int i = 0;
    for (i = 0; i < n; i++)
    {
        scanf("%d", &a[i]);
    }
    int ret = is_ordered(a, n);
    if (ret == 1)
    {
        printf("sorted\n");
    }
    else
    {
        printf("unsorted");
    }
    return 0;
}

全部评论

相关推荐

喜欢走神的孤勇者练习时长两年半:池是池,发是发,我曾池,我现黑
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务