cmgycmgy22 发表于 2008-7-2 13:11

老谭第三版上的这个实例在VC6。0上通不过

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

int max(int x, int y)
{
        int z;
        if (x>y) z=x;
        else z=y;
    return(z);
}

请各位帮我看看错在哪里,还有这样的格式规范吗?我是一个初学者

boshido 发表于 2008-7-2 13:17

把int max放到前面去声明试试。老谭的程序有些需要修改才能通过。可能是编译环境不一样。谁知道呢?他的书只能看看思想,具体还得自己搞定。

界水乘风 发表于 2008-7-2 13:20

都是多个括号,少个分号之类的错误,

难道自己不能多检查检查?!

cmgycmgy22 发表于 2008-7-2 13:25

说的很对啊,他的书确实只能看看思想,初学者没有好的教材,学习真是困难。刚学不了解,才买的书,有点上当的感觉

cmgycmgy22 发表于 2008-7-2 13:36

错误找到了,是我自己粗心,return 0后面没加;

flyue 发表于 2008-7-2 14:19

在main前面写“int max(int x, int y);”

woshiyun 发表于 2008-7-2 14:26

[quote][bo][un]flyue[/un] 在 2008-7-2 14:19 的发言:[/bo]

在main前面写“int max(int x, int y);” [/quote]

为什么要在main前面写呢?

flyue 发表于 2008-7-2 14:30

要在调用函数之前就得声明函数

woshiyun 发表于 2008-7-2 14:31

[quote][bo][un]flyue[/un] 在 2008-7-2 14:30 的发言:[/bo]

要在调用函数之前就得声明函数 [/quote]
自己在编译器上试试吧,我也不说你什么了。好好看清楚LZ的程序再发言。

qGemini 发表于 2008-7-2 14:32

[quote][bo][un]flyue[/un] 在 2008-7-2 14:30 的发言:[/bo]

要在调用函数之前就得声明函数 [/quote]
那你不是自相矛盾吗?干嘛写在main前面,原来的位置不行吗

lanzhouxiaomo 发表于 2008-7-2 15:41

不就是return 0后面少了个分号

niuwen1 发表于 2008-7-2 15:48

[quote][bo][un]flyue[/un] 在 2008-7-2 14:30 的发言:[/bo]

要在调用函数之前就得声明函数 [/quote]
樓主的程序并沒有在聲明前使用MAX函數,程序的第一句只是定義一個函數,所以可以不用在MAIN前面加聲明

a54344071 发表于 2008-7-2 15:53

楼主是不是程序的MAX函数声明的地方有问题

页: [1]

编程论坛