C++ Primer Plus 编程练习题 第四章 复合类型

发布于:2025-03-15 ⋅ 阅读:(6) ⋅ 点赞:(0)

1.字符数组

#include <iostream>
using namespace std;

int main() 
{
	char first_name[15];
	cout << "what is your first name?";
	cin.getline(first_name,15);
	cout << "what is your last name?";
	char last_name[15];
	cin.getline(last_name, 15);
	char grade;
	cout << "what letter grade do you deserve?";
	cin>>grade;
	int age;
	cout << "what is your age?";
	cin>>age;
	cout << "name:" << last_name << "," << first_name<<"\n";
	cout << "grade:" << char(int(grade) +1)<<"\n";
	cout << "age:" << age;
	return 0;
}

2.char 数组改 string

string类中的getline方法和iostream类中的getline方法不同

#include <iostream>
#include<string>
using namespace std;

int main() 
{
	string name;
	string dessert;
	cout << "Enter your name:\n";
	getline(cin,name);
	cout << "Enter your favorite dessert:\n";
	getline(cin,dessert);
	cout << "i have some delicious " << dessert;
	cout << "for you " << name << "\n";
	return 0;
}

3.char数组方式利用cstring中的函数进行字符串组合

#include <iostream>
#include<cstring>
using namespace std;

int main() 
{
	char fir_name[20];
	cout << "Enter your first name: ";
	cin >> fir_name;
	char las_name[20];
	cout << "Enter your last name: ";
	cin >> las_name;
	char name[20];
	strcpy_s(name, las_name);
	strcat_s(name, ", ");
	strcat_s(name, fir_name);
	cout<<"here is the information in a single string: "<<name;
	return 0;
}

4.string方式进行字符串组合

#include <iostream>
#include<string>
using namespace std;

int main() 
{
	string fir_name;
	cout << "Enter your first name: ";
	cin >> fir_name;
	string las_name;
	cout << "Enter your last name: ";
	cin >> las_name;
	string name;
	name = las_name + ", " + fir_name;
	cout<<"here is the information in a single string: "<<name;
	return 0;
}

5.CandyBar糖果结构

#include <iostream>
#include <string>;
using namespace std;

struct Candybar 
{
	string brand;
	float weight;
	int calories;
};

int main() 
{
	Candybar snack = { "Mocha Munch",2.3,350 };
	cout << "snack 的品牌为: " << snack.brand<<"\n";
	cout << "snack 的重量为: " << snack.weight<<"\n";
	cout << "snack 的卡路里为: " << snack.calories;
	return 0;
}

6.CandyBar糖果结构数组

#include <iostream>
#include <string>;
using namespace std;

struct Candybar 
{
	string brand;
	float weight;
	int calories;
};

int main() 
{
	Candybar snack[3] =
	{
		{"Mocha Munch", 2.3, 350},
		{"Ssadno Csnaod",2.4,56},
		{"Asnado Mdasijo",2.5,780}
	};
	cout << "Mocha Munch的卡路里为: " << snack[0].calories << "\n";
	cout << "Ssadno Csnaod的重量为: " << snack[1].weight << "\n";
	cout << "Asnado Mdasijo的品牌为: " << snack[2].brand;
	return 0;
}

7.披萨饼分析

#include <iostream>
#include <string>;
using namespace std;

struct Pizza
{
	string brand;
	float weight;
	int d;
};

int main() 
{
	Pizza piz;
	cout << "请输入披萨的品牌:";
	getline(cin, piz.brand);
	cout << "请输入披萨的直径:";
	cin>>piz.d;
	cout << "请输入披萨的重量:";
	cin >> piz.weight;
	cout << "\n" << "披萨的品牌为: " << piz.brand<<"\n";
	cout << "披萨的直径为: " << piz.d << "\n";
	cout << "披萨的重量为: " << piz.weight;
	return 0;
}