|
发表于 2024-1-2 12:56:33
From FishC Mobile
|
显示全部楼层
|阅读模式
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
int main(void)
{float a,b,c;
int max(float a,float b);
scanf("%f,%f",&a,&b);
c=max(a,b);
printf("the result is:%.2f\n",c);
return 0;
}
int max(float x,float y)
{
float z;
if(x>y)
z=x;
else
z=y;
return z;
}
请问为什么只能是int max(float a,float b),不能是int max(a,b)呢
本帖最后由 jackz007 于 2024-1-2 13:46 编辑
代码格式一定要工整,尤其是缩进的层次一定要分明,只有这样才能方便查错和阅读。
- #include <stdio.h>
- int main(void)
- {
- float a , b , c ;
- int max(float a,float b) ; // 这个是函数声明,主要强调的是输入参数及返回值的类型,你甚至可以写成 int max(float , float) ;
- scanf("%f,%f",&a,&b) ; // 这样写,在运行中容易出问题,最好去掉 "%f,%f" 中间的 ",",写成 scanf("%f%f",&a,&b) ;
- c = max(a , b) ; // 这个是函数调用,不写参数及返回值的类型,有携带实参
- printf("the result is:%.2f\n",c) ;
- return 0 ;
- }
- int max(float x , float y) ; // 返回值 z 是 float,所以,应该写成 float max(float a , float b)
- {
- float z ;
- if(x > y) z = x ;
- else z = y ;
- return z ;
- }
复制代码
|
|