晕,n=1,int a[n],这么写,你数组大小就1个元素。可你在循环输入时,居然n++,这不越界输入了么数组到底要多大,题目没说吗???如果n可以很大,那么就用动态分配空间,比如int n;scanf("%d",&n);int * a = (int * ) malloc(sizeof(int)*n);for(int i=0;i<n;i++) scanf("%d",&a[i]);
vs中不支持C99的变长数组,不知道你的编译器是那个????