| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 630 人关注过本帖
标题:关于函数辨别的问题
取消只看楼主 加入收藏
wxswuwuwu
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-5-17
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
关于函数辨别的问题
#include<iostream.h>
int chenji(int,int);
double chenji(double,double);
void main()
{
    int a,b,chenjic;
    cout<<"请输入a,b=";
    cin>>a>>b;
    chenjic=chenji(a,b);
    cout<<"a,b的乘积为"<<chenjic<<endl;
   
    double i,j,chenjid;
    cout<<"请输入i,j=";
    cin>>i>>j;
    chenjid=chenji(i,j);
    cout<<"i,j的乘积为"<<chenjid<<endl;
}
   
    int chenji(int x,int y)
    {
        int m;
        m=x*y;
        return m;
    }
   
    double chenji(double x,double y)
    {
        double m;
        m=x*y;
        return m;
    }
这个是一个求乘积的函数,但是只能分两次输入,第一次是整数,第二次是双精度,如果开始输入小树的话就会出现错误,我想把它修改成能够自动辨别整数和小数然后进行运算,但是想来想去貌似没有什么可行的方法,只能分两次输入,真的就这么悲剧么,还是干脆弃掉int只用double呢?
或者我在cin后加个if语句来辨别小数和整数可行么,但是加个if语句来辨别的话我又该如何来确定小数和整数呢……
残念……
搜索更多相关主题的帖子: return 
2011-05-18 10:25
wxswuwuwu
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-5-17
收藏
得分:0 
不是啊,我执行后直接输入小数,他默认的是第一个,结果就是错误结果了啊,数据溢出了啊
不能识别啊,郁闷了啊
2011-05-18 13:03
wxswuwuwu
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-5-17
收藏
得分:0 
我知道用double就能解决啊,但是我想做成一个系统能够自动辨别整数和小数的啊
上面用的却是是函数重载啊,老实说我对函数重载理解的还不深,只知道能够调用里面的函数而已……
我用模板来试试再说吧……
2011-05-18 17:56
wxswuwuwu
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-5-17
收藏
得分:0 
我这回写的应该是模板了吧,怎么还是不行啊
#include<iostream.h>
template<class T>
T chenji(T x,T y)
{
    T t;
        t=x*y;
    return t;
}
void main()
{
    int a,b,chenjic;
    cout<<"请输入a,b="<<endl;
    cin>>a>>b;
    chenjic=chenji(a,b);
    cout<<"a,b的乘积为"<<chenjic<<endl;
   
    double i,j,chenjid;
    cout<<"请输入i,j="<<endl;
    cin>>i>>j;
    chenjid=chenji(i,j);
    cout<<"i,j的乘积为"<<chenjid<<endl;
}
这回写的倒是有点模样了,直接输入小数可以运算两边,第一遍溢出,但是第二遍的结果也不对啊
如果还是先输入整数再输入小数就不会有问题,哪位高手帮忙修改下啊,是在无能为力了……
2011-05-18 18:08
wxswuwuwu
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-5-17
收藏
得分:0 
好吧,我被无视了,结贴吧
2011-05-19 18:17
快速回复:关于函数辨别的问题
数据加载中...
 
   



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

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