总计n+1行,第1行是所创建的图书表中的图书个数,后n行是n本图书的信息(书号、书名、价格),每本图书信息占一行,书号、书名、价格用空格分隔。其中价格输出保留两位小数。 如何用c++完成
时间: 2024-10-15 07:11:56 浏览: 50
1_顺序表_
5星 · 资源好评率100%
在C++中,你可以使用`iostream`库来进行输入输出操作,并利用`fstream`库处理文件I/O。以下是一个简单的示例程序,它会按照你描述的方式创建并写入一个文本文件:
```cpp
#include <iostream>
#include <fstream>
#include <iomanip> // 包含用于控制输出格式的头文件
int main() {
int n; // 图书数量
std::cout << "请输入图书的数量(n): ";
std::cin >> n;
std::ofstream file("books.txt"); // 创建文件流
if (!file.is_open()) { // 检查是否成功打开文件
std::cerr << "无法打开文件!" << std::endl;
return 1;
}
// 写入第一行的图书数量
file << n << "\n";
// 循环遍历,写入每一本书的信息
for (int i = 0; i < n; ++i) {
std::string book_id, title;
double price;
std::cout << "请输入第" << (i + 1) << "本书的书号、书名和价格(价格保留两位小数): ";
std::cin >> book_id >> title >> price;
file << book_id << ' ' << title << ' ' << fixed << setprecision(2) << price << '\n'; // 使用fixed和setprecision设置浮点数输出格式
}
file.close(); // 关闭文件
std::cout << "数据已成功写入books.txt文件。\n";
阅读全文