| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 631 人关注过本帖
标题:新手求助,用两个类写一个员工信息统计。
只看楼主 加入收藏
guowei3758
Rank: 2
来 自:陕西咸阳
等 级:论坛游民
帖 子:58
专家分:72
注 册:2010-4-9
结帖率:55.56%
收藏
 问题点数:0 回复次数:5 
新手求助,用两个类写一个员工信息统计。
#include<iostream>
using namespace std;
enum paople_sex{m,f};
class birthday
{
private:
    int year;
    int month;
    int day;
public:
    void birth()
    {
        cout<<"the birthday"<<endl;
        cout<<"please input the year:";
        cin>>year;
        cout<<"please input the month:";
        cin>>month;
        cout<<"please input the day:";
        cin>>day;
    }
    void print2()
    {
        cout<<year<<"."<<month<<"."<<day<<endl;
    }
};
class people
{
private:
    long int number;
    char sex;
    long int id;
public:
    void xinxi()
    {
            birthday b;
            cout<<"please input the number:";
            cin>>number;
            cout<<"please input the sex:(m/f)";
            cin>>sex;
            cout<<"please input the id:";
            cin>>id;
            b.birth();
    }
    void print1()
    {
        birthday b;
        cout<<number<<endl
            <<sex<<endl
            <<id<<endl;
        b.print2();
    }
};
void main()
{
    int i,n;
    system("color 9e");
    people p[1000];
    cout<<"How many people?";
    cin>>n;
    for(i=0;i<n;i++)
    {
        p[i].xinxi();
    }
    for(i=0;i<n;i++)
    {
        p[i].print1();
    }
}
为什么最后出来year.month.day为未赋值
搜索更多相关主题的帖子: 员工 统计 
2010-04-30 19:26
最近不在
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:204
专家分:842
注 册:2010-2-28
收藏
得分:0 
我觉得你在类的设计上出了问题,把生日提出来做了一个类。应该在信息类里面包含一个生日结构体就好了。
一个类用来处理员工信息好像就够了。另外你的员工信息,应该一个一个的通过set,get得到。最后再定义一个类成员函数读取输入信息,并传递给私有成员

例子
void CNodeProc::InputData()
{
    cout<<"*************************"<<endl;
    char szName[20] = "";
    cout<<"姓名:";
    cin>>szName;
    SetName(szName);

    char szSex[10] = "";
    cout<<"性别:";
    cin>>szSex;
    SetSex(szSex);

    int szAge ;
    cout<<"年龄:";
    cin>>szAge;
    SetAge(szAge);

    char szAddr[20] = "";
    cout<<"地址:";
    cin>>szAddr;
    SetAddr(szAddr);
    cout<<"*************************"<<endl;

}
2010-04-30 23:23
最近不在
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:204
专家分:842
注 册:2010-2-28
收藏
得分:0 
不好意思,理解错了,思维方式不一样,birday b应该放在函数外部申明,公有成员!放在里面,输入和输出的b对象,毫无干系
2010-05-01 00:09
guowei3758
Rank: 2
来 自:陕西咸阳
等 级:论坛游民
帖 子:58
专家分:72
注 册:2010-4-9
收藏
得分:0 
3q  这个搞定了
还有一个:
输入id好像不能用long int  应该用什么呢???
用long int的话 放不下18位的整数。。
如果用int id[20]   说cin>>id不对  应该怎样改??

[ 本帖最后由 guowei3758 于 2010-5-1 18:43 编辑 ]
2010-05-01 18:40
最近不在
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:204
专家分:842
注 册:2010-2-28
收藏
得分:0 
用char,用字符数字!想
2010-05-01 22:59
guowei3758
Rank: 2
来 自:陕西咸阳
等 级:论坛游民
帖 子:58
专家分:72
注 册:2010-4-9
收藏
得分:0 
回复 5楼 最近不在
3q 搞定了
2010-05-02 12:29
快速回复:新手求助,用两个类写一个员工信息统计。
数据加载中...
 
   



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

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