在一个数组中,假设它有十个数,求这个数组的平均数,然后找出与这个平均数相差最小的数组元素。
我的代码如下。
我发现与平均值相差最小的有两个数,分别是5和6,但是输出的时候只能输出5.
就算说有没有办法可以将差值相等的两个或者多个数全部都输出出来呢?
#include "stdio.h"
#define N 10
int main()
{
int a[N]={1,2,3,4,5,6,7,8,9,10};
int i,j,t;
float sum=0,k,n=1000000;
for(i=0;i<10;i++)
sum+=a[i];
sum=sum/10;
printf("平均值:%f\n",sum);
for(i=0;i<10;i++){
k=a[i]-sum;
if(0<k<n||k<0&&k>n) {n=k;t=i;}
}
printf("%d ",a[t]);}