C++ Primer 7.1.1节练习

// 7.1.1节练习.cpp: 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
using namespace std;


struct Sales_data {
    std::string bookNo;
    unsigned units_sold = 0;
    double revenue = 0.0;
};

int main()
{
    Sales_data total;//保存下一条交易记录的变量
                     //读入第一条交易记录,并确保有数据可以处理
    total.bookNo = "abcdefg";
    total.revenue = 0.2;
    total.units_sold = 10;
    if (total.bookNo != "") {
        Sales_data trans; //保存和的变量
                          //读入并处理剩余交易记录
        trans.bookNo = "abcdefg";
        trans.revenue = 0.2;
        trans.units_sold = 10;

        //如果我们仍在处理相同的书
        if (total.bookNo == trans.bookNo)
            total.units_sold += trans.units_sold;
        //更新总销售额
        else {
            //打印前一本书的结果
            std::cout << total.units_sold * total.revenue << std::endl;
            total.units_sold = trans.units_sold;
            //total现在表示下一本书的销售额 
        }
    }
    std::cout << total.units_sold * total.revenue << std::endl;
    //打印最后一本书的结果 
    if (total.bookNo == "") {
        //没有输入!警告读者
        std::cerr << "No data?" << std::endl;
        return -1; //表示失败 
    }
    return 0;
}

 

posted @ 2018-05-29 09:14  FengYuyang  阅读(259)  评论(0)    收藏  举报