把scanf获取输入放到while循环再试试,改为while(scanf("%d",&x)!=EOF), 如果是求平均数,那个max和min应该是不需要判断的,输入的数据都输完,可以输入CTRL+Z然后回车退出,初步修改如下:
#include <stdio.h>
int main(void){
int n,i,x,count=0,sum=0,max,min;
double c;
// int start=0;
while(scanf("%d",&x)!=EOF){
count++;
// if(start==0){
// max=min=x;
// start=1;
// }
sum+=x;
// if(max<x){
// max=x;
// }else if(min>x){
// min=x;
// }
}
//c=1.0*(sum-max-min)/(count-2);
c = sum /count;
printf("%.2f",c);
return 0;
}
#include <stdio.h>
int main()
{
int n,i,x,count=0,sum=0,max,min;
double c;
printf("Pls input numbers of number:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
printf("Pls input number %d:",i);
scanf("%d",&x);
{if(i==1)
{max=x;
min=x;}
else if(x>max)
{max=x;}
else if(x<min)
{min=x;}
}
sum+=x;
count++;
}
c=1.0*(sum-max-min)/(count-2);
printf("%.2f",c);
return 0;
}