首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

各路C++高手麻烦帮小弟我这个菜鸟解一上惑!谢谢

2013-01-08 
各路C++高手麻烦帮我这个初学者解一下惑!!多谢之前输了一个简单的比大小的程序,但最后得的结果都是472这个

各路C++高手麻烦帮我这个初学者解一下惑!!多谢
之前输了一个简单的比大小的程序,但最后得的结果都是472这个数,麻烦帮我看看哪里出错了~多谢!!
#include<stdio.h>
void main()
{
int max(int x,int y);
inta,b,c;
scanf("%d,%d,&a,&b");
c=max(a,b);
printf("max=%d\n",c);
}
int max(int x,int y)
{
intz;
if(x>y)z=x;
else z=y;
return(z);
}
我把max函数中的z换成c结果也都一样,这是为什么???
[解决办法]

#include <stdio.h>

int max(int x, int y)
{
    return x > y? x: y;
}

int main(int argc, char* argv[])
{
    int a, b, c;
    scanf("%d,%d", &a, &b);

    c = max(a, b);
    printf("max=%d\n", c);

    return 0;
}


或者将max定义成宏。
[解决办法]
把函数的声明写在main外面,而且先于main函数声明。
因为你定义写在main函数里面,被当做了声明。
这个是老式的C做法,所以会出问题

热点排行