C语言 菜鸟请教

来源:百度知道 编辑:UC知道 时间:2024/06/22 20:01:13
下面这个运行老是出错
main()
{
int a,b,c;
printf("a,b=");
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
}
int max(a,b)
int x,y;
{int z;
if (x>y)
z=x;
else
y=z;
return(z);
}

#include<stdio.h>
void main()
{
int max(int x,int y);
int a,b,c;
printf("a,b=");
scanf("%d,%d",&a,&b);
c=max(a,b);
printf("max=%d\n",c);
}
int max(int x,int y)
{
int z;
if (x>y)
z=x;
else
z=y;
return(z);
}

刚才没认真看,这回没问题了。

int max函数有错误
把max函数的定义写在main()函数前面,或者在main()函数前面写个max函数的声明,然后在main()函数后面定义
int max(int a,int b)
{
if(a>b)
return a;
else
return b;
}

或者更简略的写法
int max(int a,int b)
{
return a>b?a:b;
}

下面部分改为
int max(a,b)
{int x,y;
int z;
if (x>y)
z=x;
else
y=z;
return z;
}