输若干数放一数组中(以输入-1为结束),去一最高,一最低求平均值,输大于平均值的数及其原位置.

来源:百度知道 编辑:UC知道 时间:2024/05/15 18:21:56

如果不对再给偶说哈~ 偶再改哈~
#include<stdio.h>
main(){
int a[i],n,average;
int max=0;
int min=0;
int sum=0;
/*输入数*/
for(i=0;i<=32768;i++)
scanf("%d",a[i]);
if(a[i]==-1)
{n=i;
break;}
/*把所有数加起来求和得到sum*/
for(i=0;i<n;i++)
{sum=sum+a[i];}
/*找出最大最小值*/
for(i=0;i<n;i++)
{if(a[i]>=max)
max=a[i];
if(a[i]<=min)
min=a[i];}
/*用和sum减去最大最小数*/
sum=sum-max;
sum=sum-min;
/*求平均数*/
average=sum/(n-1);
/*求出大于平均值的数和位置 并输出*/
for(i=0;i<n;i++)
{if(a[i]!=max&&a[i]!=n)
if(a[i]>average)
{printf("%d大于平均数值",a[i]);
i=i+1;
printf("此数的位置为%d",i);
}
}
}

int output()
{
int i = 0;
vector<int> v_int;

while(i != -1)
{
cin>>i;
if( i >=0 )
{
v_int.push_back(i);
}
}