赞
踩
主要步骤:
-
- int LocateElem(SeqList& L, int e)
- {
- for (int i = 0; i < L.Length; i++)
- if (L.data[i] == e)
- return (i + 1);
- return 0;
- }
完整测试代码:
- //注意Length是从1 开始
- //而数组下标即data 是从0 开始
- #include<iostream>
- using namespace std;
- #define MaxSize 10 //默认最大长度
- typedef struct
- {
- int data[MaxSize];
- int Length; //当前表长
- }SeqList;
- void InitList(SeqList& L)
- {
- L.Length = 6;
- for (int i = 0; i <L.Length; i++)
- {
- L.data[i] = i+1; //Length表示当前最大长度 而不是数组下标
- //把第一个元素赋值给下标是0的 数组
- }
- }
- int LocateElem(SeqList& L, int e)
- {
- for (int i = 0; i < L.Length; i++)
- if (L.data[i] == e)
- return (i + 1);
- return 0;
- }
- void test03() //按值查找
- {
- SeqList L;
- InitList(L);
- for (int i = 0; i < L.Length; i++)
- {
- cout << "第" << i << "个数是" << L.data[i] << endl;
- }
- cout << "当前长度Length=" << L.Length << endl << endl;
-
-
- if (int k = LocateElem(L, 5))
- cout << "元素值为" <<5<< "被查找到"<<"在第"<<k<<"位" <<"数组下标是"<<k-1<< endl;
-
- else
- cout << "查找失败" << endl;
-
- }
-
- int main()
- {
- test03();
- system("pause");
- return 0;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。