#include <stdio.h>
int main()
{
int max(int x, int y, int z);
int a, b, c,d;
scanf_s(" % d, % d, % d", &a, &b, &c);
d = max(a, b, c);
printf("%d", d);
return 0;
}
int max(int x, int y, int z)
{
if (x > y)
max = x;
else max = y;
if (max > z)
max = max;
else max = z;
return (max);
}
望采纳,谢谢
#include <stdio.h>
int main()
{
int max(int x, int y, int z);
int a, b, c,d;
scanf("%d %d %d", &a, &b, &c);
d = maxnum(a, b, c);
printf("%d", d);
return 0;
}
int maxnum(int x, int y, int z)
{
int max;
if (x > y)
max = x;
else max = y;
if (max > z)
max = max;
else max = z;
return max;
}
语法上没错, 我估计是你输入的时候没有按scanf_s里面的格式输入
将scanf_s改为scanf
max函数中缺少max变量的定义
int max(int x, int y, int z)
{
int max;
if (x > y)
max = x;
else max = y;
if (max > z)
max = max;
else max = z;
return (max);
}
(1)max函数中,max没有声明,且跟函数重名了。
(2)scanf_s中,%和d之间不能有空格,%d和%d之间有逗号,输入数据的时候也要有逗号。
代码修改如下:
#include <stdio.h>
int main()
{
int max(int x, int y, int z);
int a, b, c, d;
scanf_s("%d%d%d", &a,&b, &c);
d = max(a, b, c);
printf("%d", d);
return 0;
}
int max(int x, int y, int z)
{
int mm;
if (x > y)
mm = x;
else mm = y;
if (mm > z)
mm = mm;
else mm = z;
return (mm);
}
输入及运行结果: