C++ Primer Plus(第6版)Chapter 4 编程题答案
来源:互联网 发布:太平天国失败 知乎 编辑:程序博客网 时间:2024/05/18 00:38
C++ Primer Plus(第6版)Chapter 4 编程题答案
第1题:
// task 1#include <iostream>#include <string>#include <cstring>#include <array>int main(){ using namespace std; cout << "What is your first name? "; char fname[20]; cin.getline(fname, 20); //getline(), 因为Betty Sue之间有空格 cout << "What is your last name? "; char lname[20]; cin.getline(lname, 20); //Yewe cout << "What letter grade do you deserve? "; char score; cin >> score; //B cout << "What is your age? "; int age; cin >> age; //22 cout << "Name: " << lname << ", " << fname << endl; cout << "Grade: " << char(score + 1) << endl; cin.get(); cin.get(); return 0;}
第2题:
// task 2int main(){ using namespace std; string name, dessert; cout << "Enter your name:\n"; getline(cin, name); cout << "Enter your favorite dessert:\n"; getline(cin, dessert); cout << "T have some delicious " << dessert; cout << " for you, " << name << ".\n"; cin.get(); cin.get(); return 0;}
第3题:
// task 3int main(){ using namespace std; cout << "Enter your first name: "; char fname[20]; cin.getline(fname, 20); cout << "Enter your last name: "; char lname[20]; cin.getline(lname, 20); char name[40]; strcpy_s(name, lname); //加上 _s for safe strcat_s(name, ", "); strcat_s(name, fname); cout << "Here's the information in a single string: " << name; cin.get(); cin.get(); return 0;}
第4题:
// task 4int main(){ using namespace std; string fname, lname, name; cout << "Enter your first name: "; getline(cin, fname); cout << "Enter your last name: "; getline(cin, lname); name = lname + ", " + fname; cout << "Here's the information in a single string: " << name; cin.get(); cin.get(); return 0;}
第5题:
// task 5int main(){ using namespace std; struct CandyBar { char band[20]; float weight; int colory; }; CandyBar snack = { "Mocha Munch", 2.3, 350 }; cout << "The band is " << snack.band << endl; cout << "The weight is " << snack.weight << endl; cout << "The kaluli is " << snack.colory << endl; cin.get(); cin.get(); return 0;}
第6题:
// task 6int main(){ using namespace std; struct CandyBar { char band[20]; float weight; int colr; }; // 创建一个结构数组并初始化 CandyBar snacks[3] = { { "Mocha Munch", 2.3, 350 }, { "star bucks", 1.8, 200 }, { "hagendasi", 4.9, 638 } }; cout << "The 1st band is " << snacks->band << endl; cout << "The 1st weight is " << snacks->weight << endl; cout << "The 1st kaluli is " << snacks->colr << endl; cout << "The 2st band is " << (snacks + 1)->band << endl; cout << "The 2st weight is " << (snacks + 1)->weight << endl; cout << "The 2st kaluli is " << (snacks + 1)->colr << endl; cout << "The 3st band is " << (snacks + 2)->band << endl; cout << "The 3st weight is " << (snacks + 2)->weight << endl; cout << "The 3st kaluli is " << (snacks + 2)->colr << endl; cin.get(); cin.get(); return 0;}
第7题:
// task 7int main(){ using namespace std; struct pizza { string name; float d; float weight; }; pizza bishengke; cout << "Enter the name: "; getline(cin, bishengke.name); cout << "Enter the zhijing: "; cin >> bishengke.d; cout << "Enter the weight: "; cin >> bishengke.weight; cout << "The band is: " << bishengke.name << endl; cout << "The zhijing is: " << bishengke.d << endl; cout << "The weight is: " << bishengke.weight << endl; cin.get(); cin.get(); return 0;}
第8题:
// task 8int main(){ using namespace std; struct pizza { string name; float d; float weight; }; pizza* pt = new pizza; cout << "Enter the zhijing: "; cin >> pt->d; cout << "Enter the name: "; cin.get(); //用来吃掉回车,不能少 getline(cin, pt->name); cout << "Enter the weight: "; cin >> pt->weight; cout << "The band is: " << pt->name << endl; cout << "The zhijing is: " << pt->d << endl; cout << "The weight is: " << pt->weight << endl; cin.get(); cin.get(); return 0;}
第9题:
// task 9int main(){ using namespace std; struct CandyBar { char band[20]; float weight; int colr; }; // 动态创建一个结构数组 CandyBar* snacks = new CandyBar[3]; snacks[0] = { "Mocha Munch", 2.3, 350 }; snacks[1] = { "Star Bucks", 1.8, 200 }; snacks[2] = { "HaGenDaSi", 4.9, 645 }; cout << "The 1st band is " << snacks->band << endl; cout << "The 1st weight is " << snacks->weight << endl; cout << "The 1st kaluli is " << snacks->colr << endl; cout << "The 2st band is " << (snacks + 1)->band << endl; cout << "The 2st weight is " << (snacks + 1)->weight << endl; cout << "The 2st kaluli is " << (snacks + 1)->colr << endl; cout << "The 3st band is " << (snacks + 2)->band << endl; cout << "The 3st weight is " << (snacks + 2)->weight << endl; cout << "The 3st kaluli is " << (snacks + 2)->colr << endl; delete[] snacks; cin.get(); cin.get(); return 0;}
第10题:
// task 10int main(){ using namespace std; cout << "Enter the three score: "; array<double, 3> scores; cin >> scores[0]; cin >> scores[1]; cin >> scores[2]; double av = (scores[0] + scores[1] + scores[2]) / 3; cout << "The average score of 3 is: " << av << endl; cin.get(); cin.get(); return 0;}
阅读全文