C++ Primer 课后习题1.24

时间:2014-12-18 14:53:06   收藏:0   阅读:271

原题:

编写程序,读入几笔不同的交易。对于每笔新读入的交易,要确定它的ISBN 是否和以前的交易的ISBN 一样,并且记下每一个ISBN 的交易的总数。

通过给定多笔不同的交易来测试程序。这些交易必须代表多个不同的ISBN,但是每个ISBN的记录应分在同一组。

修改:

要求可随意输入不同的ISBN交易信息,并将输入的所有交易分类别输出。

bubuko.com,布布扣
 1 #include <iostream>
 2 #include <vector>
 3 #include "Sales_item.h"
 4 #include <algorithm>
 5 using namespace std;
 6 
 7 int main()
 8 {
 9     cout<<"输入交易信息:"<<endl;
10     Sales_item book,tatol;
11     vector<Sales_item> vctBooks;
12     bool flag = true;
13     if (cin>>tatol)
14     {
15          vctBooks.push_back(tatol);
16         while (cin>>book)
17         {
18             vector<Sales_item>::iterator iter;
19             int cnt = 0;
20              for (iter = vctBooks.begin(); iter != vctBooks.end(); ++iter)
21             {
22                 cnt++;
23                 if (iter->same_isbn(book))
24                 {
25                     (*iter) += book;
26                     flag = false;
27                     break;
28                 }                
29             }
30             if(cnt == vctBooks.size() && flag)
31             {
32                 vctBooks.push_back(book);    
33                 flag = true;
34                 cnt = 0;
35             }else
36             {
37                 flag = true;
38             }
39         }
40     }
41     vector<Sales_item>::iterator iter;
42     for (iter = vctBooks.begin(); iter != vctBooks.end(); iter++)
43     {
44         cout<<*iter<<endl;
45     }
46     
47     return 0;
48 }
View Code

 结果:

bubuko.com,布布扣

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!