使用C语言顺序表查找{{710,342,45,686,6,841,686,134,686,264},10}中所有686的位置
时间: 2024-03-05 21:45:03 浏览: 17
在C语言中,可以使用顺序表进行查找操作。顺序表是一种线性表的存储结构,可以通过遍历顺序表中的元素来查找目标值。下面是使用C语言顺序表查找给定数组中所有686的位置的示例代码:
```c
#include <stdio.h>
#define MAX_SIZE 10
// 顺序表结构体
typedef struct {
int data[MAX_SIZE]; // 存储数据的数组
int length; // 顺序表的长度
} SeqList;
// 初始化顺序表
void initSeqList(SeqList *list, int arr[], int length) {
for (int i = 0; i < length; i++) {
list->data[i] = arr[i];
}
list->length = length;
}
// 查找顺序表中所有目标值的位置
void searchAll(SeqList list, int target) {
int count = 0; // 计数器,记录目标值出现的次数
for (int i = 0; i < list.length; i++) {
if (list.data[i] == target) {
printf("Target value %d found at index %d\n", target, i);
count++;
}
}
if (count == 0) {
printf("Target value %d not found in the list\n", target);
}
}
int main() {
int arr[] = {710, 342, 45, 686, 6, 841, 686, 134, 686, 264};
int length = sizeof(arr) / sizeof(arr[0]);
SeqList list;
initSeqList(&list, arr, length);
int target = 686;
searchAll(list, target);
return 0;
}
```
运行以上代码,输出结果为:
```
Target value 686 found at index 3
Target value 686 found at index 6
Target value 686 found at index 8
```
这段代码使用了一个`SeqList`结构体来表示顺序表,其中`data`数组存储了顺序表的元素,`length`表示顺序表的长度。`initSeqList`函数用于初始化顺序表,`searchAll`函数用于查找顺序表中所有目标值的位置。在`main`函数中,我们创建了一个顺序表,并调用`searchAll`函数来查找顺序表中所有686的位置。