C语言想自己规定一个数组长度 然后我依次输入元素时要保证从第二项开始都不能小于第一项 要怎么加条件


#include <stdio.h>
#include <stdlib.h>
int main()
{
    int X;
    printf("Enter number of values: ");
    do
    {

        scanf("%d",&X);
        if(X<=0)
        {
            printf("Invalid array length!\nEnter a positive number:");
        }
    }
    while(X<=0);
    int *array;
    int i;
    array=(int*)malloc(X*sizeof(int));
    for(i=0;i<X;i++)
    {
        array[i]=i+1;
    }
    free(array);
    int j;
    for(j=0;j<X;++j)
    {
        printf("Enter position %d value:",j);
        scanf("%d",&array[j]);
    }

    
    return 0;
}
int array[1000],nmb;
do
{
    scanf("%d",&nmb);
}while(nmb <= 0);
for(int i = 0;i<nmb;)
{
    scanf("%d",&array[i]);
    if( i==0 || ( i>0 && array[i] <= array[0]) )
        i++;
    else
        printf("输入数据必须比第一项要大,请重新输入:\n");
}