运行中出现奇怪的数字

问题遇到的现象和发生背景

想做一个求平均数,然后输出大于平均数的数的程序,但是每次运行都会出现这串奇怪的数,这是为啥呀?

img

问题相关代码,请勿粘贴截图

#include
int main(void)
{
int number[100];
int cnt=0;
double sum=0.0;
int x;
scanf("%d",&x);
while(x!=-1){
cnt++;
sum+=x;
number[cnt]=x;
scanf("%d",&x);
}
if(cnt>0){
printf("平均数=%f\n",sum/cnt);
int i;
for(i=0;i
if(number[i]>sum/cnt){
printf("%d ",number[i]);
}
}
}
return 0;

}

运行结果及报错内容

img

img

供参考:

#include <stdio.h>
int main(void)
{
    int number[100];
    int cnt=0;
    double sum=0.0;
    int x;
    scanf("%d",&x);
    while(x!=-1){
         sum+=x;
         number[cnt]=x;
         cnt++;  // 这句移动到这里
         scanf("%d",&x);
    }
    if(cnt>0){
         printf("平均数=%f\n",sum/cnt);
         int i;
         for(i=0;i<cnt;i++){
             if(number[i]>sum/cnt){
                printf("%d ",number[i]);
             }
         }
    }
    return 0;
}

while 循环中,把
number[cnt]=x;
这句话放到最前面

你上面贴出的文本代码有很多缺失,建议贴一份好的。下面图片中的代码貌似与你的问题无关

for(int i=1;i<=cnt;i++)