语言数据结构中用Dev c++建立一个从学号202300705001到学号202300705100的顺序表,然后删除顺序表中学号的第七位,最后还原第七位
时间: 2024-09-13 16:15:56 浏览: 45
全国青少年信息学奥林匹克竞赛(分区联赛)辅导材料和题解
在Dev C++中创建一个顺序表,可以使用数组或动态数组(例如C++中的`std::vector`),然后实现删除指定位置元素和还原删除操作的功能。下面是一个使用`std::vector`的基本示例代码,展示了如何建立一个包含特定学号范围的顺序表,删除学号中的第七位字符,以及还原该操作。
```cpp
#include <iostream>
#include <vector>
#include <string>
// 函数用于删除学号的第七位字符
void removeSeventhChar(std::string& studentId) {
if (studentId.length() > 6) {
studentId.erase(6, 1);
}
}
// 函数用于还原学号的第七位字符
void restoreSeventhChar(std::string& studentId) {
if (studentId.length() >= 6) {
studentId.insert(6, "X"); // 假设学号第七位是X
}
}
int main() {
// 建立顺序表
std::vector<std::string> studentList;
for (long long i = 202300705001; i <= 202300705100; ++i) {
std::string studentId = std::to_string(i);
studentList.push_back(studentId);
}
// 假设我们要处理学号序列中的第七个学号
int indexToProcess = 6; // 数组索引从0开始,因此第七个元素的索引是6
if (indexToProcess < 0 || indexToProcess >= studentList.size()) {
std::cout << "索引超出范围" << std::endl;
return 1;
}
// 删除学号的第七位字符
removeSeventhChar(studentList[indexToProcess]);
// 输出处理后的学号,验证是否成功删除
std::cout << "处理后的学号: " << studentList[indexToProcess] << std::endl;
// 还原第七位字符
restoreSeventhChar(studentList[indexToProcess]);
// 输出还原后的学号,验证是否成功还原
std::cout << "还原后的学号: " << studentList[indexToProcess] << std::endl;
return 0;
}
```
阅读全文