【C++ Primer Plus】编程练习答案——第4章

  1 void ch4_1() {
  2     using namespace std;
  3     string fname, lname;
  4     char grade;
  5     unsigned int age;
  6     cout << "enter first name: ";
  7     getline(cin, fname);
  8     cout << "enter last name: ";
  9     getline(cin, lname);
 10     cout << "enter your grade: ";
 11     cin >> grade;
 12     cout << "enter your age: ";
 13     cin >> age;
 14     cout << "Name: " << lname << ", " << fname << endl;
 15     cout << "Grade: " << grade + 1 << endl;
 16     cout << "Age: " << age << endl;
 17 }
 18 
 19 void ch4_2() {
 20     using namespace std;
 21     string name, dessert;
 22     cout << "Enter your name: ";
 23     getline(cin, name);
 24     cout << "Enter your favorite dessert: ";
 25     getline(cin, dessert);
 26     cout << "I have some delicious " << dessert << " for you, " << name << "." << endl;
 27 }
 28 
 29 void ch4_3() {
 30     using namespace std;
 31     char fname[20], lname[20], combine[41];
 32     cout << "enter your first name: ";
 33     cin.getline(fname, 20);
 34     cout << "enter your last name: ";
 35     cin.getline(lname, 20);
 36     strcpy(combine, lname);
 37     strcat(combine, ", ");
 38     strcat(combine, fname);
 39     cout << "Here's the information in a single string: " << combine << endl;
 40 }
 41 
 42 void ch4_4() {
 43     using namespace std;
 44     string fname, lname, combine;
 45     cout << "enter your first name: ";
 46     getline(cin, fname);
 47     cout << "enter your last name: ";
 48     getline(cin, lname);
 49     combine = lname + ", " + fname;
 50     cout << "Here's the information in a single string: " << combine << endl;
 51 }
 52 
 53 void ch4_5() {
 54     using namespace std;
 55     struct CandyBar{
 56         string brand;
 57         double weight;
 58         unsigned int kll;
 59     };
 60     CandyBar snack = {"Mocha Munch", 2.3, 350};
 61     cout << "brand: " << snack.brand << endl
 62         << "weight: " << snack.weight << endl
 63         << "kll: " << snack.kll << endl;
 64 }
 65 
 66 void ch4_6() {
 67     using namespace std;
 68     struct CandyBar{
 69         string brand;
 70         double weight;
 71         unsigned int kll;
 72     };
 73     CandyBar snack;
 74     cout << "enter brand: ";
 75     getline(cin, snack.brand);
 76     cout << "enter weight: ";
 77     cin >> snack.weight;
 78     cout << "enter kll: ";
 79     cin >> snack.kll;
 80     cout << "brand: " << snack.brand << endl
 81     << "weight: " << snack.weight << endl
 82     << "kll: " << snack.kll << endl;
 83 }
 84 
 85 void ch4_7() {
 86     using namespace std;
 87     struct Pizza{
 88         string brand;
 89         double diameter;
 90         double weight;
 91     };
 92     Pizza pizza;
 93     cout << "enter brand: ";
 94     getline(cin, pizza.brand);
 95     cout << "enter weight: ";
 96     cin >> pizza.weight;
 97     cout << "enter diameter: ";
 98     cin >> pizza.diameter;
 99     cout << "brand: " << pizza.brand << endl
100     << "weight: " << pizza.weight << endl
101     << "diameter: " << pizza.diameter << endl;
102 }
103 
104 void ch4_8() {
105     using namespace std;
106     struct Pizza{
107         string brand;
108         double diameter;
109         double weight;
110     };
111     Pizza * p_pizza = new Pizza;
112     cout << "enter diameter: ";
113     cin >> p_pizza->diameter; cin.get();
114     cout << "enter brand: ";
115     getline(cin, p_pizza->brand);
116     cout << "enter weight: ";
117     cin >> p_pizza->weight;
118     cout << "diameter: " << p_pizza->diameter << endl
119         << "brand: " << p_pizza->brand << endl
120         << "weight: " << p_pizza->weight << endl;
121 }
122 
123 void ch4_9() {
124     using namespace std;
125     struct CandyBar{
126         string brand;
127         double weight;
128         unsigned int kll;
129     };
130     CandyBar * snack_arr = new CandyBar[3];
131     snack_arr[0] = {"abc a", 34, 654};
132     snack_arr[1] = {"abc b", 34580, 4363};
133     snack_arr[2] = {"abc c", 756, 67};
134     for (int i = 0; i < 3; ++ i)
135         cout << "brand: " << snack_arr[i].brand << endl
136         << "weight: " << snack_arr[i].weight << endl
137         << "kll: " << snack_arr[i].kll << endl;
138 }
139 
140 void ch4_10() {
141     using namespace std;
142     array<double, 3> race;
143     for (int i = 0; i < 3; ++ i){
144         cout << "race: ";
145         cin >> race[i];
146     }
147     for (int i = 0; i < 3; ++ i)
148         cout << "#" << i + 1 << ": " << race[i] << endl;
149 }

 欢迎交流

posted @ 2021-08-27 14:33  开心果壳好硬  阅读(147)  评论(0编辑  收藏  举报