该程序不适用于n> 9 ...当n是静态表达式时,它工作正常

0 c arrays

如果我们取n> 9那么它就不会输入arr [n]的元素,其中n> 9.如果n是常数,程序工作正常..程序中有什么错误.请帮助...我遵守并使用mingw shell在Windows中运行它

/* Binary Search Program */

#include<stdio.h>
#include<stdlib.h>


int main()
{
    int n,arr[n],i,j,temp;
    printf("Enter The number of elements in array : ");
    scanf("%d",&n);
    printf("Enter the %d elements of array :\n",n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&arr[i]);
    }

    printf("The Unsorted array is :\n");
    for(i=0;i<n;i++)
    {
        printf("%d\n",arr[i]);
    }
    /* BOUBBLE SORTING */

    for(j=0;j<n-1;j++)
    {
        for(i=0;i<n-1-j;i++)
        {
            if(arr[i]>arr[i+1])
            {
                temp=arr[i+1];
                arr[i+1]=arr[i];
                arr[i]=temp;
            }
        }
    }
    printf("The sorted array is :\n");
    for(i=0;i<n;i++)
    {
        printf("%d\n",arr[i]);
    }

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

oua*_*uah 6

 int n,arr[n],i,j,temp;
Run Code Online (Sandbox Code Playgroud)

大小arr具有不确定的值,因为n未初始化.

通话arr结束后宣布scanf("%d",&n).