一本通1152 max函数
【题目描述】
已知:
m=max(a,b,c)/(max(a+b,b,c)×max(a,b,b+c))
输入a,b,c,求m。把求三个数的最大数max(x,y,z)分别定义成函数和过程来做。
【输入】
输入a,b,c。
【输出】
求mm,保留到小数点后三位。
【输入样例】
1 2 3
【输出样例】
0.200
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
double max(double a,double b,double c)//这里是关键,我之前写的是:int max(int a,int b,int c)这样就会导致前面定义的函数和后面用的格式不一样,如果括号内格式不对,他会弹出一个奇怪的东西如果外面不对,则结果为0.应吸取经验教训
{
int mx=0;
a=a>b?a:b;
b=b>c?b:c;
mx=a>b?a:b;
return mx;
}
using namespace std;
int main()
{
double a,b,c,m;
cin>>a>>b>>c;
m=max(a,b,c)/(max(a+b,b,c)*max(a,b,b+c));
printf("%.3lf",m);
return 0;
}