定义一个宏函数,该函数返回两个值中的较小值.下面的代码哪错了
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/16 22:00:30
定义一个宏函数,该函数返回两个值中的较小值.下面的代码哪错了
#include
#define MAX(x,y)(return ((x)>(y)?x:y;)
int main()
{
int a,b;
int m ;
scanf("%d",&a);
scanf("%d",&b);
m=MAX(a,b);
printf("%d",m);
return 0;
}
#include
#define MAX(x,y)(return ((x)>(y)?x:y;)
int main()
{
int a,b;
int m ;
scanf("%d",&a);
scanf("%d",&b);
m=MAX(a,b);
printf("%d",m);
return 0;
}
你应该这样改
#define MAX(x,y) ((x)>(y)?x:y)
因为所谓的宏函数其实只是你的一厢情愿而已,它不是函数,所谓的宏就是一种预处理,即替换
也就是
m=MAX(a,b);
=>
m=(return ((x)>(y)?x:y;);
你觉得上面的语句能编过吗?
再问: 还是有错 在m=MAX(a,b)这个地方:expect '}' before ';' token
再答: 你确定是改成#define MAX(x,y) ((x)>(y)?x:y) 而不是#define MAX(x,y) ((x)>(y)?x:y;) 你可以把你改好的代码贴出来看看
#define MAX(x,y) ((x)>(y)?x:y)
因为所谓的宏函数其实只是你的一厢情愿而已,它不是函数,所谓的宏就是一种预处理,即替换
也就是
m=MAX(a,b);
=>
m=(return ((x)>(y)?x:y;);
你觉得上面的语句能编过吗?
再问: 还是有错 在m=MAX(a,b)这个地方:expect '}' before ';' token
再答: 你确定是改成#define MAX(x,y) ((x)>(y)?x:y) 而不是#define MAX(x,y) ((x)>(y)?x:y;) 你可以把你改好的代码贴出来看看
下面定义一个函数f(),编写完整的主函数,定义恰当的变量并调用函数f(),输出函数的返回值.
如果一个函数定义为无返回值,则以下关于该函数说明正确的是()
已定义的函数有返回值,函数调用可以作为一个函数的形参?
已定义以下函数 fun(int *p) { return *p; } 该函数的返回值是
请问,我在VB里自己定义了一个函数,函数的输入变量为一个,函数计算结果为三个输出变量,请问怎么返回函数值
当一个函数无返回值时,函数的类型应定义为
1.设计一个函数min(x,y),此函数返回两个双精度数中较小的一个,并用一个简单的例子测试这个函数.
定义一个返回值是指向函数的指针且有一个指向函数的指针作为参数的函数?
函数调用就需要返回值吗?return只能返回一个值吗?函数可以不返回值,这样类型定义就没用了吗?
要求定义一个返回值为double类型的名为mysum的函数,其功能为求两个double类型数的和值,正确的定义是:
定义一个函数,能返回两个浮点型数据的大者,并在主函数中调用它,实现打印输入的3个数中的最大者.
函数定义 函数定义:函数是一个独立的、自主式代码段,用于完成特定的任务.每个函数都有名称,函数中的代码是通过程序语句中包