创建一个含有n个整型元素的顺序表,要求实现对顺序表的逆置。 输入 第一行输入元素个数n; 第二行依次输入n个元素(以空格间隔)。 输出 逆序输出顺序表中的元素,元素之间用空格分隔。 样例输入 Copy 4 8 4 7 9 样例输出 Copy 9 7 4 8
时间: 2024-09-28 16:09:19 浏览: 33
要创建一个含有 n 个整型元素的顺序表并实现其逆置,你可以使用 C 语言的数组结构来存储数据。以下是一个简单的 C 代码示例,它定义了一个 `reverse_list` 函数来逆置顺序表:
```c
#include <stdio.h>
#define MAX_SIZE 100 // 假设顺序表最大元素数量为 100
// 定义顺序表结构体
typedef struct {
int data[MAX_SIZE];
int size; // 顺序表的实际元素个数
} List;
// 向顺序表末尾添加一个元素
void add_element(List *list, int value) {
if (list->size == MAX_SIZE)
return;
list->data[list->size++] = value;
}
// 逆置顺序表
void reverse_list(List *list) {
int start = 0, end = list->size - 1;
while (start < end) {
int temp = list->data[start];
list->data[start] = list->data[end];
list->data[end] = temp;
start++;
end--;
}
}
// 打印顺序表元素
void print_list(const List *list) {
for (int i = 0; i < list->size; i++) {
printf("%d ", list->data[i]);
}
printf("\n");
}
int main() {
int n;
scanf("%d", &n);
List list;
list.size = 0;
// 读取并添加元素到列表
for (int i = 0; i < n; i++) {
int element;
scanf("%d", &element);
add_element(&list, element);
}
// 逆置列表
reverse_list(&list);
// 输出逆序后的列表
printf("逆序输出:\n");
print_list(&list);
return 0;
}
```
在这个例子中,我们首先读取元素数量 `n` 和每个元素值,然后按照输入添加到顺序表中。接着调用 `reverse_list` 函数逆置顺序表,最后打印逆序后的结果。
阅读全文