• 关于四位职工姓名排序


    class date
    {
    int year, mouth, day;
    public:
    date(int year, int mouth, int day) :year(year), mouth(mouth), day(day){}
    int getYear()const { return year; }
    int getMouth()const{ return mouth; }
    int getDay()const{ return day; }
    };

    class person
    {
    char name[14];
    bool is_male;
    date birth_date;
    public:
    person(char* name, bool is_male, date birth_date) :is_male(is_male), birth_date(birth_date)
    {
    strcpy(this->name, name);
    }
    const char* getName()const { return name; }
    bool isMale()const{ return is_male; }
    date getBirthDay()const { return birth_date; }
    void show()
    {
    cout << endl;
    cout << name << ","<< (is_male ? "男" : "女") << ',' << "出生日期:" << birth_date.getYear() << "年" << birth_date.getMouth() << "月" << birth_date.getDay() << "日" << endl;
    }
    int compareName(const person &p)const
    {
    return strcmp(this->name, p.name);
    }
    };


    void sortByName(person ps[], int size)
    {
    for (int i = 0; i < size - 1; i++)
    {
    int m = i;
    for (int j = i + 1; j < size;j++)
    {
    if (ps[j].compareName(ps[m])<0)
    {
    m = j;
    }
    if (m>i)
    {
    person p = ps[m];
    ps[m] = ps[i];
    ps[i] = p;
    }
    }
    }

    }


    int _tmain()
    {
    person staff[] = { person ("张三",true,date(1978, 4, 20)),
    person("王五",false,date(1965, 8, 3)), person("杨六",false, date(1965, 9, 5)),
    person("李四",true,date(1973, 5, 30)) };
    const int size = sizeof(staff) / sizeof(staff[0]);
    int i;
    cout << endl << "按姓名排序";
    cout << endl << "排序前:";
    for (i = 0; i < size;i++)
    {
    staff[i].show();
    }
    sortByName(staff, size);
    cout << "排序后:"<<endl;
    for (int i = 0; i < size; i++){ staff[i].show(); }
    return 0;
    }

  • 相关阅读:
    用js实现 全选功能(Gridview)
    图片 加文字水印或者图片水印
    Gridview中RowCommand事件的应用
    图片噪点的产生
    DataList实现折叠效果
    利用Request对象的CurrentExecutionFilePath做分页
    利用分页控件AspNetPager来做数据的分页
    log4Net一些记忆性总结
    彩色验证码
    组织机构设计器窗体基类 代码分析
  • 原文地址:https://www.cnblogs.com/huninglei/p/5477711.html
Copyright © 2020-2023  润新知