用伪代码描述:#include <stdio.h> int max(int a, int b, int c) { int max = a; if (b > max) { max = b; } if (c > max) { max = c; } return max; } int main() { int a, b, c; double m; scanf("%d%d%d",&a,&b,&c); m=max(a,b,c)/(max(a+b,b,c) * max(a,b,b+c)*1.0); printf("%.3f\n",m); return 0; }
时间: 2023-06-15 11:08:36 浏览: 102
算法描述:
1. 定义一个函数 max(a,b,c),用于返回三个数中的最大值。
2. 在函数 max(a,b,c) 中,先将变量 max 初始化为 a。
3. 接着使用 if 判断语句,如果 b 大于 max,则将 max 赋值为 b。
4. 再使用 if 判断语句,如果 c 大于 max,则将 max 赋值为 c。
5. 最后返回变量 max。
6. 在主函数中,先定义变量 a、b、c 和 m。
7. 使用 scanf 从标准输入中读取 a、b、c 的值。
8. 调用函数 max(a,b,c) 计算出三个数中的最大值。
9. 计算分子 max(a,b,c)。
10. 计算分母 max(a+b,b,c) * max(a,b,b+c)。
11. 将分子除以分母,并强制转换为浮点数类型,赋值给变量 m。
12. 使用 printf 输出变量 m,保留三位小数。
13. 返回 0,表示程序正常结束。
伪代码实现:
```
FUNCTION max(a, b, c):
max = a
IF b > max THEN
max = b
END IF
IF c > max THEN
max = c
END IF
RETURN max
END FUNCTION
BEGIN
DECLARE a, b, c, m
READ a, b, c FROM stdin
m = max(a, b, c) / (max(a+b, b, c) * max(a, b, b+c) * 1.0)
PRINT "%.3f" % m
RETURN 0
END
```
阅读全文