假设某班要购进一批图书,共N种。编写程序,从键盘输入书名、购买数量及价格,计算每种书的总金额和所有书的总金额,输出购书清单。 输入描述 第一行是一个正整数n,表示购物的图书种类数,n<100 接下来n行,每一行输入书名(长度<100)、购买数量和价格。 输出描述 输出包含n种图书的购书清单,包括书名、数量、单价和总金额,每一种图书占一行,最后列出总金额。其中书名宽度为10,右对齐,单价、合计、总价格保留小数点后2位。c++右对齐
时间: 2024-03-25 17:41:44 浏览: 184
好的,以下是C++代码实现:
```c++
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
int main() {
int n;
cin >> n; // 输入购物的图书种类数
string name;
int num;
double price;
double total = 0; // 所有书的总金额
cout << setw(10) << "书名" << setw(10) << "数量" << setw(10) << "单价" << setw(10) << "合计" << endl; // 输出表头
for (int i = 0; i < n; i++) {
cin >> name >> num >> price; // 输入书名、购买数量和价格
double sum = num * price; // 计算每种书的总金额
total += sum; // 累加所有书的总金额
cout << setw(10) << name << setw(10) << num << setw(10) << fixed << setprecision(2) << price << setw(10) << fixed << setprecision(2) << sum << endl; // 输出每种书的购书清单
}
cout << "总金额:" << fixed << setprecision(2) << total << endl; // 输出所有书的总金额
return 0;
}
```
输入样例:
```
3
C++ Primer 5th 2 59.9
算法竞赛入门经典 1 39.8
数据结构与算法分析 3 68.5
```
输出样例:
```
书名 数量 单价 合计
C++ Primer 5th 2 59.90 119.80
算法竞赛入门经典 1 39.80 39.80
数据结构与算法分析 3 68.50 205.50
总金额:365.10
```
阅读全文