C语言,数组,求和

长度为五的数组,1,计算数组中五个数据的平均数,2,大于平均数的放在一个数组内,3,小于平均数的放在另一数组内,4,然后求五个数据之和,用函数调用的方法,输出这四个要求后... 长度为五的数组,1,计算数组中五个数据的平均数,2,大于平均数的放在一个数组内,3,小于平均数的放在另一数组内,4,然后求五个数据之和, 用函数调用的方法, 输出这四个要求后的数据,还有原数据 展开
 我来答
nari_lizw
2014-09-02 · TA获得超过7390个赞
知道大有可为答主
回答量:2075
采纳率:70%
帮助的人:816万
展开全部
供参考:
#include "stdio.h"
#define DIM 5
float avg(float* num,int dim)
{
float num_z=0.0;
for(int k=0;k<dim;k++)
num_z=num_z+num[k];
return num_z/dim;
}
void move(float* num_big,float* num_small,float* num_s,int dim,int* j)
{
float avg_tmp=avg(num_s,dim);
for(int k=0;k<dim;k++)
{
if(num_s[k]-avg_tmp>0)
{
*num_big=num_s[k];
num_big++;
(*j)++;
}
else
{
*num_small=num_s[k];
num_small++;
}
}
}
float sum(float* num,int dim)
{
float num_z=0.0;
for(int k=0;k<dim;k++)
num_z=num_z+num[k];
return num_z;
}
void main()
{
float number[DIM],big[DIM],small[DIM];
int i,j=0;
for(i=1;i<DIM+1;i++)
{
printf("输入第%d个数据:",i);
scanf("%f",&number[i-1]);
fflush(stdin);
}
printf("输入数据是:\n");
for(i=0;i<DIM;i++)
{
printf("%f\n",number[i]);
}
printf("平均数是:\n%f\n",avg(number,DIM));
move(big,small,number,DIM,&j);
printf("大于平均数的%d个数是:\n",j);
for(i=0;i<j;i++)printf("%f\n",big[i]);
printf("不大于平均数的%d个数是:\n",DIM-j);
for(i=0;i<DIM-j;i++)printf("%f\n",small[i]);
printf("总和是:\n%f\n",sum(number,DIM));
getchar();
}
帐号已注销
2014-09-02 · TA获得超过718个赞
知道小有建树答主
回答量:1179
采纳率:0%
帮助的人:614万
展开全部
a[5];
int i=4;float sum=0.0;
while(1+i--)
sum+=a[i];
=============
a[5];
float sum=0.0;
for(int i=0;i<5;i++)
sum+=a[i];
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Tronadoo
2014-09-02 · TA获得超过350个赞
知道小有建树答主
回答量:124
采纳率:0%
帮助的人:87.5万
展开全部
你告诉我难点在哪里,我帮你解决。
更多追问追答
追问
第二点,和第三点,小于和大于平均数哪里
追答
int[] a;  //代表你要处理的数组
double average = average(a); //自己写一个对数组求平均数的average(int[ ] a)函数,返回平均数
int[] max;

compare(a, max, average); //自己写compare(int[]a, int[] max, double average),把a中比average大的数存到max中去。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式