标题:提问?自定义函数的位置!比较两个数的大小!
只看楼主
锦衣——
Rank: 1
等 级:新手上路
帖 子:12
专家分:6
注 册:2013-2-24
结帖率:50%
已结贴  问题点数:10 回复次数:4 
提问?自定义函数的位置!比较两个数的大小!
//比较两个数的大小
#include<stdio.h>
int main()
{    int max(int a,int b);
    int x,y,z;
    printf("请输入两个数:\n");
    scanf("%d%d",&x,&y);
    z=max(x,y);
    printf("The max mun is %d\n",z);
    return 0;

}
int max(int a,int b)
{
    int m;
    if(a>b)
    {
        m=a;
    }
    else
    {
        m=b;
    }
    return m;
}
这样能正常运行!但是将函数定义放在前面则不能编译为什么????

#include<stdio.h>
int main()
int max(int a,int b)
{
    int m;
    if(a>b)
    {
        m=a;
    }
    else
    {
        m=b;
    }
    return m;
}

{    int max(int a,int b);
    int x,y,z;
    printf("请输入两个数:\n");
    scanf("%d%d",&x,&y);
    z=max(x,y);
    printf("The max mun is %d\n",z);
    return 0;

}
显示


Compiling...
1.c
I:\程序设计\1\1.c(5) : error C2085: 'max' : not in formal parameter list
I:\程序设计\1\1.c(5) : error C2143: syntax error : missing ';' before '{'
I:\程序设计\1\1.c(7) : error C2065: 'a' : undeclared identifier
I:\程序设计\1\1.c(7) : error C2065: 'b' : undeclared identifier
I:\程序设计\1\1.c(18) : error C2449: found '{' at file scope (missing function header?)
I:\程序设计\1\1.c(26) : error C2059: syntax error : '}'
执行 cl.exe 时出错.

1.exe - 1 error(s), 0 warning(s)
搜索更多相关主题的帖子: max include return 
2013-03-06 21:35
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:10 
不行就是不行  没有这种语法

DO IT YOURSELF !
2013-03-06 21:39
锦衣——
Rank: 1
等 级:新手上路
帖 子:12
专家分:6
注 册:2013-2-24
得分:0 
问题已解决,将int main()往后移也能编译成功
#include<stdio.h>

int max(int a,int b)
{
    int m;
    if(a>b)
    {
        m=a;
    }
    else
    {
        m=b;
    }
    return m;
}
int main()
{    int max(int a,int b);
    int x,y,z;
    printf("请输入两个数:\n");
    scanf("%d%d",&x,&y);
    z=max(x,y);
    printf("The max mun is %d\n",z);
    return 0;

}
谢谢!!
2013-03-06 21:47
suchengjie
Rank: 1
等 级:新手上路
帖 子:118
专家分:1
注 册:2013-3-2
得分:0 
楼上正解
2013-03-06 21:49
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
本来就2种模式
1.所有子函数都在main之前实现  子函数不需要声明
2.所有子函数都在main之前声明 在main之后实现

这有啥奇怪的

DO IT YOURSELF !
2013-03-06 21:51



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-399939-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.625056 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved