编写一个程序,提示用户输入3组数,每组数包含5个double类型的数(假设用户都能正确的响应,不会输入非数值数据)。该程序应完成下列任务。 a.把用户输入的数组都放在3*5的数组中 b.计算每组(5个)数组的平均值 c.计算所以数据的平均值 d.找出这15个数据中的最大值 e.打印结果
/编写一个程序,提示用户输入3组数,每组数包含5个double类型的数(假设用户都能正确的响应,不会输入非数值数据)。该程序应完成下列任务。
a.把用户输入的数组都放在35的数组中
b.计算每组(5个)数组的平均值
c.计算所以数据的平均值
d.找出这15个数据中的最大值
e.打印结果*/
#include <stdio.h>
#define ROWS 3
#define COLS 5
void output(double dub, char *str);
void scanf_fun(int rows, int cols,double buff[rows][cols])
{
printf("please enter 3 buff 5 number\n");
for(int i=0;i<rows;i++)
{
for(int j=0;j<cols;j++)
{
printf("please enter %d buff %d number\n",i+1,j+1);
scanf("%lf",&buff[i][j]);
}
}
}
double agv_fun(double *buff,int n)
{
double sum=0.0;
double agv=0.0;
for(int i=0;i<n;i++)
{
sum+=buff[i];
}
agv=sum/n;
return agv;
}
double agv_all(int rows, int cols,double buff[rows][cols])
{
double sum=0.0;
double agv=0.0;
for(int i=0;i<rows;i++)
{
sum=agv_fun(buff[i],cols);
}
agv=sum/rows;
return agv;
}
double max_fun(int rows, int cols,double buff[rows][cols])
{
double temp=0.0;
for(int i=0;i<rows;i++)
{
for(int j=0;j<cols;j++)
{
if(temp<buff[i][j])
{
temp=buff[i][j];
}
}
}
return temp;
}
void output(double dub, char *str)
{
printf("%s:%.2f\n",str,dub);
}
int main(void)
{
double buff[3][5];
double agv_all;
double agv;
double max;
scanf_fun(ROWS,COLS,buff);
for(int i=0;i<ROWS;i++)
{
agv=agv_fun(buff[i],COLS);
output(agv,"agv");
}
agv_all=max_fun(ROWS,COLS,buff);
output(agv_all,"agv_all");
max=max_fun(ROWS,COLS,buff);
output(max,"max");
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通