c++ primer plus 复合类型练习题

1.本题要求:

编写一个C++程序,如下述输出示例所示那样请求并显示信息

what is your first name? Betty Sue

what is your last name? Yewe

what letter grade do you deserve? B

what is your age? 22

Name:Yewe

grade: C

age:22

解题思路:

符合类型这一章里面介绍了结构体,因此采用结构体最合适

本题稍微麻烦的地方在于 输入B变成C,试了半天用强制转换搞定了,代码贴上

#include <iostream>
struct human 
{
    char name[30];
    char Lname[20];
    char grade;
    int age;
};
int main()
{
    using namespace std;
    human *p = new human;
    cout << "what is your first name?\n";
    cin>> (*p).name;
    cout << "what is your last name?\n";
    cin >> (*p).Lname;
    cout << "what letter grade do you deserve?\n";
    cin >> (*p).grade;
    cout <<"what is your age?\n" ;
    cin >> (*p).age;
    cout << "Name:" <<(*p).name<< "," << (*p).Lname<<"\n";
    cout << "grade:" << (char)((*p).grade +1)<< "\n"; //把B变成C,强制转换
    cout << "age:"<<(*p).age;
    delete p;
    return 0;
}

运行结果c++ primer plus 复合类型练习题