解题思路:先定义一个MAX函数 两数互比后得到的最大数与第三个数比较
注意事项:
(1) 本程序包括两个函数。其中,主函数 main 仍然是整个程序执行的起点,函数 max
(2) 主函数 main 调用 scanf 函数,获得两个整数,分别存入 a、b 两个变量中,然后调用 函数 max,获得两个数中较大的数,并赋给变量 c。最后输出变量 c 的值(结果)。
(3) max 是用户自定义的函数,int max(int x,int y)是函数入口,表示此函数运行时需要获 得两个整数值,数据处理结束后会返回一个整数值。
(4) 函数 max 同样也用{和}将函数体括起来。max 的函数体是函数功能的具体实现,它 从参数表获得数据,将处理后得到的结果存储于 z 中,然后将 z 返回调用函数 main。
(5) 本例表明函数除了调用库函数外,还可以调用用户自定义的函数。
参考代码:
#include <stdio.h> int max(int x,int y) /* 计算两数中较大的数 */ {int z; /* 声明部分,定义变量 */ if(x>y) z=x; else z=y; return z; /* 将 z 值返回,通过 max 带回调用处 */ } void main() {int a,b,c,d,s; /*声明部分,定义变量*/ scanf("%d,%d,%d",&a,&b,&c); d=max(a,b); /* 调用 max,将调用结果赋给 d*/ s=max(c,d); /*调用max,将c d最大值赋给S*/ printf("max=%d",s); }
0.0分
0 人评分
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int max = (int a, int b); int max = (int a, int b) { if (a > b) return a; else return b; } int main() { int a[3]; int i = 0; for (i = 0; i < 3; i++) { scanf("%d", &a[i]); } int mass = max(a[0], a[1]); int mass2 = max(mass, a[2]); printf("%d", mass2); return 0; }请问这个为啥有问题啊