设计一个People 类,该类的数据成员有姓名、年龄、身高、体重和人数,其中人数为静态数据成员,成员函数有构造函数、显示和显示人数。其中构造函数由参数姓名、年龄、身高和体重来构造对象;显示函数用于显示人的姓名、年龄、身高和体重;显示人数函数为静态成员函数,用于显示总的人数。

输入描述:
按姓名(长度小于100)、年龄、身高和体重(三个整数,范围10~1000)依次输入每个人的信息,已exit结束

输出描述:
一个整数,表示总人数。
示例1
输入
复制
zhao 18 180 70
qian 20 160 50
exit
输出
复制
2
以下是使用 C++ 实现的代码:
cpp
#include <iostream>
#include <string>
using namespace std;

class People {
private:
    string name;
    int age;
    int height;
    int weight;
    static int count;  // 静态数据成员,用于记录人数

public:
    // 构造函数
    People(string n, int a, int h, int w) : name(n), age(a), height(h), weight(w) {
        count++;
    }

    // 显示函数
    void display() {
        cout << name << &quot; &quot; << age << &quot; &quot; << height << &quot; &quot; << weight << endl;
    }

    // 静态成员函数,显示人数
    static void displayCount() {
        cout << count << endl;
    }
};

// 初始化静态数据成员
int People::count = 0;

int main() {
    string name;
    int age, height, weight;
    while (true) {
        cin >> name;
        if (name == &quot;exit&quot;) break;
        cin >> age >> height >> weight;
        People p(name, age, height, weight);
        p.display();
    }
    People::displayCount();
    return 0;
}
代码解释
类的定义与成员变量
定义了 People 类,其中包含私有成员变量 name(姓名)、age(年龄)、height(身高)、weight(体重),以及静态私有成员变量 count(人数)。静态成员变量 count 用于统计创建的 People 类对象的数量,它在所有 People 类对象之间共享。
构造函数
People 类的构造函数 People(string n, int a, int h, int w) 接受姓名、年龄、身高和体重作为参数,在构造函数内部,通过初始化列表将参数赋值给相应的成员变量,并将静态成员变量 count 的值加 1,表示创建了一个新的 People 类对象。
显示函数 display
该函数用于输出一个人的姓名、年龄、身高和体重信息,通过 cout 按照指定格式输出成员变量的值。
静态成员函数 displayCount
这是一个静态成员函数,用于输出总的人数。由于它是静态函数,不依赖于具体的对象实例,所以可以直接通过类名 People::displayCount() 来调用,在函数内部输出静态成员变量 count 的值。
静态数据成员初始化
在类外对静态数据成员 count 进行初始化,int People::count = 0;,将其初始值设置为 0,表示初始时没有创建任何 People 类对象。
main 函数部分
在 main 函数中,通过一个无限循环 while (true) 来不断读取输入信息。首先读取姓名,如果姓名为 &quot;exit&quot;,则跳出循环。然后读取年龄、身高和体重,并创建一个 People 类对象 p,传入读取到的信息进行初始化。接着调用 p.display() 函数输出该对象的信息。
循环结束后,调用 People::displayCount() 函数输出总的人数,最后返回 0 结束程序。
全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 12:31
以前小时候我最痛恨出轨、偷情的人,无论男女,为什么会出轨?现在我成了自己最讨厌的人,没想到分享的东西在牛客会被这么多人看,大家的评价都很中肯,我也认同,想过一一回复,但我还是收声了,我想我应该说说这件事,这件事一直压在我心里,是个很大的心结,上面说了人为什么出轨,我大概能明白了。我们大一下半年开始恋爱,开始恋爱,我给出了我铭记3年的承诺,我对她好一辈子,我永远不会背叛,我责任心太重,我觉得跟了我,我就要照顾她一辈子,我们在一起3年我都没有碰过她,她说往东我就往东,她说什么我做什么,她要我干什么,我就干什么!在学校很美好,中途也出过一些小插曲,比如男闺蜜、男闺蜜2号等等等。但我都强迫她改掉了,我...
牛客刘北:两个缺爱的人是没有办法好好在一起的,但世界上哪有什么是非对错?你后悔你们在一起了,但是刚刚在一起的美好也是真的呀,因为其他人的出现,你开始想要了最开始的自己,你的确对不起自己,21岁的你望高物远,你完全可以不谈恋爱,去过你想要的生活,你向往自由,在一起之后,你要想的不是一个人,而是两个人,你不是变心了,就像你说的,你受够了,你不想包容了,冷静几天是你最优的选择,爱人先爱己。
社会教会你的第一课
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务