捞我一下,这个代码循环也停不下来。

img


想比较输入的数的大小,求平均数,但是循环那里出不来了,快捞我一下

把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;
}

img

img


完整代码:


#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;
}