| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 423 人关注过本帖
标题:求助:模板例题排序为什么不排
只看楼主 加入收藏
yj9501
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-8-25
结帖率:0
收藏
已结贴  问题点数:20 回复次数:1 
求助:模板例题排序为什么不排
请教各位大虾,为什么我执行这个程序不会排序?


//三个数按最小值到最大值排序
template <class T>
void order(T&x,T&y,T&z)
{
    T a;
    if (x>y) {a=x;x=y;y=a;}
    if (y>z) {a=y;z=y;y=a;}
    if (x>y) {a=x;x=y;y=a;}
    }

#include <iostream.h>
void main ()
{
    void order(double&x,double&y,double&z);
    int a=19,b=7,c=10;
    double x=50.5,y=2.5;
    int m=34;

    order(a,b,c);
    cout<<a<<"<"<<b<<"<"<<c<<endl;
    order(x,y,m);
    cout<<x<<"<"<<y<<"<"<<m<<endl;
}
搜索更多相关主题的帖子: void include 最大值 
2012-08-25 21:03
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:20 
你看看这句:if (y>z) {a=y;z=y;y=a;}
这是换两个数吗?这只是让 z 也等于 y 而已。要细心。

另外,这句是什么意思:
void order(double&x,double&y,double&z);
最后为什么还要传一个 int m 过去?
2012-08-27 03:54
快速回复:求助:模板例题排序为什么不排
数据加载中...
 
   



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

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