第二条结果应为Sorry,the book on the best position doesn't exist!
时间: 2024-09-13 10:16:58 浏览: 34
在`FindLocate_Sq`函数中,当试图查找的位置不在可用图书列表内,即索引超过了`length`(表示已知图书的数量),你应该返回一条错误消息,告知用户"Sorry,the book on the best position doesn't exist!"。在上述代码中,这发生在查找最佳位置(比如索引为0或`length`)但列表为空的情况下,或者是用户输入的索引大于当前图书表的长度时。
如果需要在函数开始时添加对最佳位置的查找逻辑,可以这样做:
```cpp
int FindLocate_Sq(SqList L)
{
if (L.length == 0) { // 判断表是否为空
cout << "Sorry,the book on the best position doesn't exist!" << endl;
return OK;
}
int m;
cin >> m; // 输入查找次数
// 检查查找次数是否超出范围
if (m <= 0 || m > L.length) {
cout << "Sorry, the number of queries is invalid!" << endl;
return OK;
}
// ... 后续的查找代码保持不变 ...
// 在这里不需要额外检查最佳位置,因为已经提前判断了表是否为空
}
```
现在,如果表一开始就是空的,就会直接输出"Sorry,the book on the best position doesn't exist!",而无需额外的条件。其他部分的代码可以根据实际情况进行调整。
阅读全文