aaaaabbbbb88 2022-11-15 20:03 采纳率: 57.1%
浏览 21
已结题

在一个数组中,假设它有十个数,求这个数组的平均数,然后找出与这个平均数相差最小的数组元素。

在一个数组中,假设它有十个数,求这个数组的平均数,然后找出与这个平均数相差最小的数组元素。
我的代码如下。
我发现与平均值相差最小的有两个数,分别是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]);}

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-11-15 22:21
    关注
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月16日
  • 创建了问题 11月15日

悬赏问题

  • ¥15 16进制修改视频的元数据
  • ¥15 思科模拟器Router c3600 NM-4E
  • ¥15 岛津txt格式文件转nirs格式
  • ¥15 石墨烯磁表面等离子体
  • ¥15 angular 项目无法启动
  • ¥15 安装wampserver,图标绿色,但是无法进入软件
  • ¥15 C++ MFC 标准库 加密解密解惑
  • ¥15 两条数据合并成一条数据
  • ¥15 Ubuntu虚拟机设置
  • ¥15 comsol三维模型中磁场为什么没有“速度(洛伦兹项)”这一选项