注册 登录
编程论坛 C++教室

求解!帮忙看一下!谢谢了~~~~~~~~~~~~~~~~~~

wizard8405 发布于 2010-04-12 11:26, 604 次点击
#include<iostream.h>
class base
{   public:
    int x,y,z;
    int init(int x,int y){z=x*2-y;return x,y,z;}
    getx(){return x;}
    gety(){return y;}
    print(){cout<<"2*"<<x<<"-"<<y<<"="<<z<<endl;}

};
void main()
{
base a;
a.init(68,55);
a.print();
}

显示结果要求是:2*68-55=81
但结果不是,这个X,Y的值怎么不对!我哪里没做好???谢谢了~!
8 回复
#2
wizard84052010-04-12 11:27
改来改去,X,Y的值就是不正常~奇怪了
#3
MyStar2010-04-12 13:25
你的程序里根本就没有给全局变量x,y赋值!!!!别把全局变量和局部变量弄混了!!!!!!!!
#4
秀痘魔导士2010-04-12 14:33
#include<iostream.h>
class base
{   public:
    int x,y,z;
    int init(int x,int y){this->x = x;this->y = y;}
    getx(){return x;}
    gety(){return y;}
    print(){cout<<"2*"<<x<<"-"<<y<<"="<<z<<endl;}

};
void main()
{
base a;
a.init(68,55);
a.print();
}
#5
yyblackyy2010-04-12 14:45

int init(int x,int y){z=x*2-y;return x,y,z;}
x,y,没有初始化也没有赋值能显示出正常的才怪呢
楼主,上面的x,y是参数而非成员变量哦
int init(int x,int y){z=x*2-y;this->x = x;this->y = y;return x,y,z;}这样就可以了
#6
dog527306522010-04-12 20:55
大哥你的类都有问题 你还用类、、
#7
wizard84052010-04-16 11:11
谢谢了,这个题目的意思就是要求你根据下面的部分写出上面的类!受教了~!
#8
缝小肛2010-04-16 12:16
只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录
#include<iostream.h>
class Base
{   
public:

    int init(int x, int y);
    int getx();
    int gety();
    void print();
private:
    int m_x;
    int m_y;
    int m_z;

};

int Base::init(int x, int y)
{        
    m_x = x;
    m_y = y;
    m_z=m_x * 2 - m_y;
    return x,y;
}

int Base::getx()
{
    return m_x;
}

int Base::gety()
{
    return m_y;
}

void Base::print()
{
    cout<<"2*"<<m_x<<"-"<<m_y<<"="<<m_z<<endl;
}

int main()
{
    Base a;
    a.init(68,55);
    a.print();
    return 0;
}
#9
缝小肛2010-04-16 12:18
一定要注意自己的书写风格,尽量标准化;写高质量的C++程序;
1