c++primer 第l六章编程练习答案
6.11.1
#include<iostream>
#include<cctype> int main() {
using namespace std;
char ch;
cin.get(ch);
while (ch != '@') {
if (isdigit(ch))
cout << ch;
else if (isupper(ch)) {
ch = tolower(ch);
cout << ch;
}
else if (islower(ch)) {
ch = toupper(ch);
cout << ch;
}
cin.get(ch);
}
}
6.11.2
#include<iostream>
#include<cctype> int main() {
using namespace std;
double donations[];
double donation;
double average, sum = ;
int i, num=;
cout << "input donation,at most 10\n";
for (i = ; (cin >> donation) && (i < ); i++) {
donations[i] = donation;
sum += donations[i];
}
average = sum / i;
for (i = ; i < ; i++) {
if (donations[i] > average)
num++;
}
cout << "average is " << average << " and " << num << " numbers bigger than avergae.";
}
6.11.3
#include<iostream> int main() {
using namespace std;
char ch;
cout << "Please enter one of the following choices:\n"
"c) carnivore p) pianist\n"
"t) tree g) game\n";
cout << "Please enter a c,p,t,or g:";
cin >> ch;
//cout << "A maple is a ";
while (ch!='f') {
switch (ch)
{
case'c':cout << "A maple is a carnivore.";
break;
case'p':cout << "A maple is a pianist.";
break;
case't':cout << "A maple is a tree.";
break;
case'g':cout << "A maple is a game.";
break;
default:cout << "Please enter a c,p,t,or g:";
}
cin >> ch;
}
}
6.11.4
#include<iostream> using namespace std; const int strsize = ;
const int memberSize = ; struct bop {
char fullname[strsize];
char title[strsize];
char bopname[strsize];
int preference;
};
void name(bop *member);
void title(bop *member);
void bopname(bop *menber);
void preference(bop *member); int main() {
char choose;
bop member[] = {
{"zhang","manager","boss",},
{"li","programer","pg",},
{"wang","teacher","tc",}
};
cout << "Benevolent Order of Programmers Report\n"
"a.display by name b.display by title\n"
"c.display by bopname d.display by preference\n"
"q.quit\n"
"Enter your choice: ";
cin >> choose; while (choose!='q')
{
switch (choose)
{
case 'a':name(member);
break;
case 'b':title(member);
break;
case 'c':bopname(member);
break;
case 'd':preference(member);
break;
default:cout << "Not good choose\n";
break;
}
cout << "Next choose:";
cin >> choose;
}
} void name(bop * member)
{
for (int i = ; i < memberSize; i++) {
cout << member[i].fullname << endl;
}
} void title(bop * member)
{
for (int i = ; i < memberSize; i++) {
cout << member[i].title << endl;
}
} void bopname(bop * member)
{
for (int i = ; i < memberSize; i++) {
cout << member[i].bopname << endl;
}
} void preference(bop * member)
{
for (int i = ; i < memberSize; i++) {
switch (member[i].preference)
{
case :cout << member[i].fullname << endl;
break;
case :cout << member[i].title << endl;
break;
case :cout << member[i].bopname << endl;
break;
default:
cout << "存在非法的偏好";
break;
}
}
}
6.11.5
#include<iostream> int main() {
using namespace std;
int money;
double tax = ;
cout << "Please input your income: ";
cin >> money;
cout << fixed;
cout.precision();
cout.setf(ios::showpoint);
while (cin.good()&&(money>=))
{
if (money<=)
{
tax = 0.0;
break;
}
else if ((money > ) && (money <= )) {
tax = (money - )*0.1;
break;
}
else if ((money > ) && (money <= )) {
tax = (money - )*0.15 + * 0.1;
break;
}
else {
tax = (money - )*0.2 + * 0.15 + * 0.1;
break;
}
}
cout << "Your personal income tax is " << tax << " tvarps";
}
6.11.6
#include<iostream>
#include<string> using namespace std; struct donations
{
string name;
double money;
}; int main() {
int donorSize, grand_patron_size = , patrons_size = ;
cout << "How many people donate?\n"
"donorSize: ";
cin >> donorSize;
donations *donor = new donations[donorSize];
donations *grand_patrons = new donations[donorSize];
donations *patrons = new donations[donorSize];
cout << "Please enter donor's contribution amount:" << endl;
cout << fixed;
cout.precision();
cout.setf(ios_base::showpoint);
for (int i = ; i < donorSize; i++)
{
cout << "name:";
cin >> donor[i].name;
//cin.get();
//cout << "\t";
cout << "contribution amout:";
cin >> donor[i].money;
}
for (int i = ; i < donorSize; i++)
{
if (donor[i].money > ) {
grand_patrons[grand_patron_size] = donor[i];
++grand_patron_size;
}
else {
patrons[patrons_size] = donor[i];
++patrons_size;
}
}
cout << "=============== Grand Partrons ================" << endl;
if (grand_patron_size != ) {
for (int i = ; i < grand_patron_size; i++)
{
cout << "name: " << grand_patrons[i].name << "\tmoney:" << grand_patrons[i].money << endl;
}
}
else
{
cout << "None";
}
cout << "================= Partrons ====================" << endl;
if (patrons_size != ) {
for (int i = ; i < patrons_size; i++)
{
cout << "name: " << patrons[i].name << "\tmoney:" << patrons[i].money << endl;
}
}
else
{
cout << "None";
}
delete[] donor;
delete[] grand_patrons;
delete[] patrons;
}
6.11.7
#include<iostream>
#include<string>
#include<cctype> int main() {
using namespace std;
int vowel = , consonant = , other = ;
string word;
cout << "Enter word (q to quit): \n";
cin >> word;
while (cin.good() && word != "q")
{
if (isalpha(word[])) {
switch (word[])
{
case 'a':
vowel++;
break;
case 'A':
vowel++;
break;
case 'e':
vowel++;
break;
case 'E':
vowel++;
break;
case 'i':
vowel++;
break;
case 'I':
vowel++;
break;
case 'o':
vowel++;
break;
case 'O':
vowel++;
break;
case 'u':
vowel++;
break;
case 'U':
vowel++;
break;
default:
consonant++;
}
}
else
other++;
cin >> word;
}
cout << vowel << " words beginning with vowels." << endl;
cout << consonant << " words beginning with consonants." << endl;
cout << other << " others.";
}
6.11.8
#include<iostream>
#include<fstream>
#include<cstdlib>
#include<string> int main() {
using namespace std;
ifstream infile;
string str;
int sum = ;
infile.open("D:\\visual studio 2015\\Projects\\homework\\homework\\Debug\\TextFile1.txt");
if (infile.is_open()) {
while (infile.good())
{
str += infile.get();
++sum;
}
cout << "The file contains " << sum << " characters.";
}
else
{
cout << "Failed to read file.";
exit(EXIT_FAILURE);
}
infile.close();
}
6.11.9
#include<iostream>
#include<string>
#include<fstream>
#include<cstdlib> using namespace std; struct donations
{
string name;
double money;
}; int main() {
int donorSize, grand_patron_size = , patrons_size = ;
string donor_information;
ifstream infile;
infile.open("D:\\visual studio 2015\\Projects\\homework\\homework\\TextFile2.txt");
if (infile.is_open()) {
infile >> donorSize;
infile.get();
cout << donorSize << endl;
donations *donor = new donations[donorSize];
donations *grand_patrons = new donations[donorSize];
donations *patrons = new donations[donorSize]; cout << fixed;
cout.precision();
cout.setf(ios_base::showpoint); for (int i = ; i < donorSize; i++)
{ getline(infile, donor[i].name);
infile >> donor[i].money;
infile.get();
}
for (int i = ; i < donorSize; i++)
{
cout << donor[i].name << endl;
cout << donor[i].money << endl;
}
for (int i = ; i < donorSize; i++)
{
if (donor[i].money > ) {
grand_patrons[grand_patron_size] = donor[i];
++grand_patron_size;
}
else {
patrons[patrons_size] = donor[i];
++patrons_size;
}
}
cout << "=============== Grand Partrons ================" << endl;
if (grand_patron_size != ) {
for (int i = ; i < grand_patron_size; i++)
{
cout << "name: " << grand_patrons[i].name << "\tmoney:" << grand_patrons[i].money << endl;
}
}
else
{
cout << "None";
}
cout << "================= Partrons ====================" << endl;
if (patrons_size != ) {
for (int i = ; i < patrons_size; i++)
{
cout << "name: " << patrons[i].name << "\tmoney:" << patrons[i].money << endl;
}
}
else
{
cout << "None";
}
delete[] donor;
delete[] grand_patrons;
delete[] patrons;
}
else
{
cout << "Failed to open file.";
exit(EXIT_FAILURE);
}
infile.close();
}
c++primer 第l六章编程练习答案的更多相关文章
- c++ primer plus 第六章 课后题答案
#include <iostream> #include <cctype> using namespace std; int main() { char in_put; do ...
- 【C++】《C++ Primer 》第六章
第六章 函数 一.函数基础 函数定义:包括返回类型.函数名字和0个或者多个形参(parameter)组成的列表和函数体. 调用运算符:调用运算符的形式是一对圆括号 (),作用于一个表达式,该表达式是函 ...
- c primer plus(五版)编程练习-第六章编程练习
1.编写一个程序,创建一个具有26 个元素的数组,并在其中存储26 个小写字母.并让该程序显示该数组的内容. #include<stdio.h> #define SIZE 26 int m ...
- C++Primer 第十六章
//1.模板定义以关键字template开始,后跟一个模板参数列表,此列表不能为空.编译器用推断出的模板参数来实例化一个特定版本的函数.类型参数前必须使用class或者typename(推荐使用typ ...
- 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第6章编程练习9
#include <iostream> #include <fstream> #include <cstdlib> #include <string> ...
- 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第6章编程练习8
#include <iostream> #include <fstream> #include <cstdlib> const int SIZE=20; using ...
- 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第6章编程练习7
#include <iostream> #include <string> #include <cctype> using namespace std; int m ...
- 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第6章编程练习6
#include <iostream> #include <string> using namespace std; const int MSIZE=100; struct j ...
- 编程菜鸟的日记-初学尝试编程-C++ Primer Plus 第6章编程练习5
#include <iostream> using namespace std; const double N1=35000; const int N2=15000; const int ...
随机推荐
- sql server扫盲系列
本系列为入门级,不会介绍过于深入的知识.为防止不道德转载(特别是红黑联盟,把我原文地址删掉,其他照搬,无节操无道德),尽可能打上水印和加上原文地址,读者看的不爽请见谅.原文地址:http://blog ...
- F110 参数保存和重新运行录屏
**初始界面回车 PERFORM frm_dynpro USING ' 'X'. PERFORM frm_dynpro USING '' 'BDC_CURSOR' 'F110V-LAUFD'. PER ...
- cn_office_professional_plus_2010_x86_515 安装激活方法解决方案64bit
一:首先选择 Office 2010 Toolkit.exe 右键 选择属性 –兼容性 然后 选择以管理员身份运行此程序 然后 双击 Office 2010 Toolkit.exe 需要安装的工具及 ...
- Excel 查找某一列中包含指定字符的单元格
网上查找相关内容,个人感觉是另一种形式的过滤喽.有的说用FIND,有的用高级筛选.我查找时如下: 1.新拉一列,标注公式“=ISNUMBER(FIND("宣",B2))”,然后拉至 ...
- request doesn't contain a multipart/form-data or multipart/mixed stream ……
有文件控件"file"的表单,在提交的时候,直接使用了ajax提交,结果报了一堆错,原来这个东东要提交表单,还要用post方式,最后更改为: $("#saveForm&q ...
- python区分大小写吗
如果能区分像myname和Myname这样的标识符,那么它就是区分大小写的.也就是说它很在乎大写和小写. myname='Ayushi' print(Myname) Traceback (most r ...
- STM32 ~ CH340在STM32实现一键下载电路
在做基于STM32的多功能MP3播放器的课题时,在程序下载这部分时借鉴了正点原子开发板上的一键下载电路,采用CH340G这款芯片设计. 在画PCB初期原理图部分,对采用CH340G设计的一键下载电路不 ...
- SM3算法
/* * sm3.h * * 为使此算法兼容32位.64位下Linux或Windows系统, * 选择 int 来表示 32 位整数. * 消息长度最大限定为 2**32 - 1(单位:比特), * ...
- CentOS7在VMWare12中安装后不能上网解决办法
首先要保证你的VMWare Workstation12 在安装号CentOS7后没改动什么关于网络相关的. 1.我的电脑一开始用的是VMWare WorkStations10,发现VMnet8根本不通 ...
- CentOS 5下freeswitch中集成使用ekho实现TTS功能二
三:以上Festival安装完成以后回到ekho安装目录: 执行./configure --enable-festival 前 更改configure 1:替换 #AC_DEFINE(ENABLE_F ...