OJC语言问题 H: 正序和逆序,请问这个这么写?

问题 H: 正序和逆序
题目描述
小浩喜欢对数列正序排列,小彤喜欢对数列逆序排列,为此小浩和小彤吵得不可开交,最后的结局是小浩和小彤的数列交替输出,小浩的数还是正序,小彤的数还是逆序。

输入
从键盘输入两个正整数m和n(0<m,n<100000),用空格隔开。

输出
交替输出1到m和n到1的自然数列,每个数之后有一个空格。

样例输入 Copy
3 5
样例输出 Copy
1 5 2 4 3 3 2 1
[提交][状态]

定义2个数组,方便保存正序和逆序的值,然后通过循环输出。

#include<stdio.h>
int main() {
    int m,n;
    scanf("%d %d",&m,&n);
    int i=1,j=n;
    while(i<=m||j>=1) {
        if(i>m)    printf("%d ",j);
        if(j<1) printf("%d ",i);
        if(i<=m&&j>=1) printf("%d %d ",i,j);
        i++;
        j--;
    }
    return 0;
}

觉得有用的话采纳一下哈