ylxd41 2016-08-18 06:54 采纳率: 0%
浏览 834

小白求教为什么ave这个变量不传递值

#include
int main(void)
{
int s,ave,total;
int num[5];
int*p;
p=num;
for(int i=0;i<5;i++)
{
scanf("%d",(p+i));
total+=*(p+i);
}
ave=total/5;
for(i=0,s=0;i<5;i++)
{
if(ave<*(p+i))
{
num[s]=*(p+i);
s=s+1;
}
else
continue;
}
for(s=0;s<sizeof(num);s++)
printf("%d\n",num[s]);
return 0;
}

  • 写回答

1条回答 默认 最新

  • threenewbee 2016-08-18 15:39
    关注

    ave适合定义成float或者double
    ave=total/5;修改为ave=total/5.0f;

    评论

报告相同问题?