1.5.2节练习
练习1.23:编写程序,读取多条销售记录,并统计每个ISBN(每本书)有几条几条销售记录。
解答:
#include <iostream>
#include "Sales_item.h"
int main()
{
Sales_item trans1, trans2;
int num = 1;
std::cout << "请输入若干销售记录:" << std::endl;
if (std::cin >> trans1){
while (std::cin >> trans2)
if (compareIsbn(trans1, trans2)) // ISBN相同
num++;
else { // ISBN不同
std::cout << trans1.isbn() << "共有" << num << "条销售记录" << std::endl;
trans1 = trans2;
num = 1;
}
std::cout << trans1.isbn() << "共有" << num << "条销售记录" << std::endl;
}
else {
std::cout << "没有数据" << std::endl;
return -1;
}
return 0;
}
练习1.24:输入表示多个ISBN的多条销售记录来测试上一个程序,每个ISBN的记录应该聚在一起。
解答:
在网站http://www.informit.com/title/0321714113上,第1章的代码目录中包含了一些数据文件,可以将这些文件重定向到此程序进行测试,也可以自己创建销售记录文件进行测试。