用c++建立一个顺序表,随机产生10个100以内的整数,并按要求完成: (1)编写显示函数,在屏幕上显示顺序表中的10个整数; (2)编写查找函数,从键盘输入任一整数在顺序表中查找,若找到,返回该元素在顺序表中的位置,
时间: 2024-03-14 08:47:58 浏览: 55
如何在C++中建立一个顺序表
5星 · 资源好评率100%
好的,下面是用C++建立一个顺序表并完成你的要求的代码:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
const int MAXSIZE = 10;
struct SqList {
int data[MAXSIZE];
int length;
};
void InitList(SqList &L) {
L.length = 0;
}
void CreateList(SqList &L) {
srand(time(NULL));
for (int i = 0; i < MAXSIZE; i++) {
L.data[i] = rand() % 100;
L.length++;
}
}
void DisplayList(SqList L) {
for (int i = 0; i < L.length; i++) {
cout << L.data[i] << " ";
}
cout << endl;
}
int Find(SqList L, int x) {
int i = 0;
while (i < L.length && L.data[i] != x) {
i++;
}
if (i == L.length) {
return -1;
} else {
return i;
}
}
int main() {
SqList L;
InitList(L);
CreateList(L);
DisplayList(L);
int x;
cout << "请输入要查找的元素值:";
cin >> x;
int pos = Find(L, x);
if (pos == -1) {
cout << "元素不存在!" << endl;
} else {
cout << "元素在顺序表中的位置为:" << pos << endl;
}
return 0;
}
```
上面的代码中,我们用 `SqList` 结构体来表示顺序表,其中 `data` 数组用来存放元素,`length` 表示顺序表的长度。`InitList` 函数用来初始化顺序表,`CreateList` 函数用来随机产生10个100以内的整数并插入到顺序表中,`DisplayList` 函数用来打印顺序表中的元素。`Find` 函数用来在顺序表中查找元素,若找到则返回该元素在顺序表中的位置,若未找到则返回-1。
在 `main` 函数中,我们先初始化顺序表并随机产生10个100以内的整数,然后打印顺序表中的元素。接着从键盘输入一个整数并调用 `Find` 函数在顺序表中查找该元素,最后根据查找结果打印相应的提示信息。
希望这个代码能够帮到你,如果有任何问题或疑问欢迎随时提出。
阅读全文