m0_62267751 2021-10-19 16:20 采纳率: 85.7%
浏览 14
已结题

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;
}
  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-10-19 16:44
    关注
    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");
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月3日
  • 已采纳回答 10月26日
  • 创建了问题 10月19日