如何修改程序使他正确输出成题目要求的那样
时间: 2024-09-15 07:08:42 浏览: 30
为了使程序按照题目要求正确输出,你需要确保在`main`函数中调用相应的函数,并提供用户输入的数据。这里是一个基本的`main`函数示例,你可以根据这个例子修改:
```cpp
#include <iostream>
int main() {
int pos;
Book book; // 初始化一个Book类型的变量存储待插入的图书信息
// 获取用户输入
std::cout << "请输入插入位置(1 <= pos <= n+1):" << std::endl;
std::cin >> pos;
// 确保输入有效
if (pos < 1 || pos > 2) { // 假设你的链表有两条记录,实际操作中需要根据实际链表长度更新
std::cerr << "插入位置无效,请重新输入!" << std::endl;
return 1; // 异常退出
}
std::cout << "请输入书号:" << std::endl;
std::cin >> book.no;
std::cout << "请输入书名:" << std::endl;
std::cin >> book.name;
std::cout << "请输入价格:" << std::endl;
std::cin >> book.price;
// 将用户输入的图书信息插入链表
LinkList list = ReadFile(list, "book.txt"); // 假设list已初始化
bool inserted = InsertBook(list, pos, &book);
if (inserted) {
// 插入成功,保存更改到文件
SaveFile(list, "book.txt");
// 输出插入后的信息
std::cout << "插入的图书信息:\n";
std::cout << book.no << " " << book.name << " " << book.price << std::endl;
} else {
std::cout << "插入失败,未在链表找到合适位置!" << std::endl;
}
FreeList(list);
return 0;
}
```
在这个`main`函数里,首先获取用户的插入位置和图书信息,然后调用`InsertBook`函数尝试在链表中插入,如果成功就保存到文件并输出插入后的信息;如果插入失败,则给出相应提示。最后别忘了释放链表内存。
阅读全文