展开全部
#include <iostream>
#include <cmath>
#define N 10
using namespace std;
int main(){
int arr[N];
int i=0;
float res,avr;
int k,s=0;
while(i!=N){ //循环输入
//cout<<s<<endl;//调试用
cin>>arr[i];//输入N个数据
s+=arr[i];//计算N个数据总和
++i;
}
avr=s/N;//计算平均数
res=arr[0];//假设所求结果与平均数的相差最小值为第一个数据
cout<<avr<<endl;
for(i=0;i!=N;++i){
if(res>abs(arr[i]-avr)){//计算每一个数与平均数的差值,是绝对值
//再比较原来的假设最小值,是否真的最小
k=i;
res=abs(arr[i]-avr);//每一次都保存相差最小差值与数组下标
}
}
cout<<"平均是: "<<avr<<" 最接近的是: "<<k<<" : "<<arr[k]<<endl;//输出结果
return 0;
}
图示用的是N=4的效果图。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询