zoukankan      html  css  js  c++  java
  • C++ Primer(第四版) 课后习题1.24

    原题:

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

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

    修改:

    要求可随意输入不同的ISBN交易信息,并将输入的所有交易分类别输出。(Sales_item.h 到官网下载)

     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,firstbook;
    11     vector<Sales_item> vctBooks;
    12     bool flag = true; //vctBooks中是否需要push数据,true需要push
    13     if (cin>>firstbook)
    14     {
    15          vctBooks.push_back(firstbook);
    16         while (cin>>book)
    17         {
    18             vector<Sales_item>::iterator iter;            
    19              for (iter = vctBooks.begin(); iter != vctBooks.end(); ++iter)
    20             {    
    21                 //如果有相同书目则相加,将flag设为false
    22                 if (iter->same_isbn(book))
    23                 {
    24                     (*iter) += book;
    25                     flag = false;
    26                     break;
    27                 }                
    28             }
    29             if(flag)
    30             {
    31                 vctBooks.push_back(book);                                
    32             }
    33             //将flag重置为ture
    34             flag = true;
    35         }
    36     }
    37     vector<Sales_item>::iterator iter;
    38     for (iter = vctBooks.begin(); iter != vctBooks.end(); iter++)
    39     {
    40         cout<<*iter<<endl;
    41     }
    42     
    43     return 0;
    44 }
    View Code

     结果:

  • 相关阅读:
    批量删除.svn文件夹、.svn文件
    Windows 7下Git SSH 创建Key的步骤
    Git:本地项目与远程仓库的git/clone
    git解决二进制文件冲突
    git设置mergetool可视化工具
    redhat7.2配置yum源
    project2016安装与破解
    strace 使用案例
    运维老鸟教你安装centos6.5如何选择安装包
    CSS限制
  • 原文地址:https://www.cnblogs.com/gis-flying/p/4171573.html
Copyright © 2011-2022 走看看