| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 532 人关注过本帖
标题:新手上路,最大值与最小值,以及嵌套调用问题
只看楼主 加入收藏
清悠海角
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2012-11-3
结帖率:100%
收藏
已结贴  问题点数:12 回复次数:5 
新手上路,最大值与最小值,以及嵌套调用问题
输入三位数,求最大值以及最小值,并输出两者之和,下面是我自己做的程序,请大家指教
#include<stdio.h>
int max(int x,int y,int z);
int min(int x,int y,int z);
int dif(int x,int y,int z);
void main()
{
    int a,b,c,d;
    printf("input a,b,c:");
    scanf("%d,%d,%d",&a,&b,&c);
    d=dif(a,b,c);
    printf("max-min=%d\n",d);
}
int max(int x,int y,int z)
{
    int max;

    max=x>y?x:y;
    max=max>z?max:z;
    return max;
}
int min(int x,int y,int z)
{
    int min;
    min=x<y?x:y;
    min=min<z?min:z;
    return min;

}
int dif(int x,int y,int z)
{
    int D,max,min;
    max=max(x,y,z);
    min=min(x,y,z);
    D=max-min;
    return D;
}
错误提示
:\Program Files\MSDev98\MyProjects\30\30.cpp(30) : error C2064: term does not evaluate to a function
   
搜索更多相关主题的帖子: max include return 最大值 
2012-11-12 21:28
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:3 
把dif函数里的两个变量max,min改了名字就好了



本人新手,说错勿怪。。。。

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-11-12 22:29
w527705090
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:11
帖 子:441
专家分:1882
注 册:2011-6-28
收藏
得分:6 
程序代码:
#include<stdio.h>
int max1(int x,int y,int z);
int min1(int x,int y,int z);
int dif(int x,int y,int z);
void main()
{
    int a,b,c,d;
    printf("input a,b,c:");
    scanf("%d,%d,%d",&a,&b,&c);
    d=dif(a,b,c);
    printf("max-min=%d\n",d);
}
int max1(int x,int y,int z)
{
    int max;
    max=x>y?x:y;
    max=max>z?max:z;
    return max;
}
int min1(int x,int y,int z)
{
    int min;
    min=x<y?x:y;
    min=min<z?min:z;
    return min;
}
int dif(int x,int y,int z)
{
    int D,max,min;
    max=max1(x,y,z);
    min=min1(x,y,z);
    D=max-min;
    return D;
}
楼上说的不够清楚。。。我来补充一下
把两个函数名称改一下就可以了。。。你那样设定函数名  系统分不清你的max 于min 是函数还是一个变量

有心者,千方百计;无心者,千难万难。
2012-11-12 22:36
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
收藏
得分:3 
你在dif函数里定义了两个变量max和min,这样在你调用函数max(),min()时系统会任务括号前的max和min是你刚定义的两个变量,这样你dif函数里调用的max(),min()就成未声明的了,个人感觉是这样的原因,请高手指导。。
个人感觉好像函数内的定义和声明比全局的优先级高,这个感觉未经证实过

本人新手,说错勿怪,欢迎指正。。

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2012-11-12 22:38
清悠海角
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2012-11-3
收藏
得分:0 
回复 2楼 yaobao
真的可以啊,错了没什么关系,肯帮我我很感谢啊
2012-11-13 10:20
清悠海角
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2012-11-3
收藏
得分:0 
回复 3楼 w527705090
已经可以运行了,谢谢哈
2012-11-13 10:20
快速回复:新手上路,最大值与最小值,以及嵌套调用问题
数据加载中...
 
   



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

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