用C语言实现将n个数按输入时顺序的逆序排列,用函数实现
时间: 2023-12-08 13:20:55 浏览: 277
好的,下面是一个简单的代码实现:
```c
#include <stdio.h>
void reverse(int arr[], int n);
int main() {
int n;
printf("请输入数组长度: ");
scanf("%d", &n);
int arr[n];
printf("请输入数组元素: ");
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
reverse(arr, n);
printf("逆序排列后的数组为: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
void reverse(int arr[], int n) {
for (int i = 0; i < n / 2; i++) {
int temp = arr[i];
arr[i] = arr[n - i - 1];
arr[n - i - 1] = temp;
}
}
```
其中 `reverse` 函数用于将数组元素逆序排列。在 `main` 函数中,首先输入数组长度和数组元素,然后调用 `reverse` 函数进行逆序排列,最后输出结果。
相关问题
用C语言,将n个数按输入时的顺序的逆序排列,用函数实现
在C语言中,你可以创建一个函数来接受数组作为参数,并使用两个指针分别指向数组的开始和结束,然后逐个交换元素实现逆序排列。这里是一个示例:
```c
#include <stdio.h>
void reverse(int arr[], int n) {
int start = 0; // 初始指针
int end = n - 1; // 结束指针
while (start < end) { // 当start小于end时,继续循环
int temp = arr[start]; // 保存起始位置的元素
arr[start] = arr[end]; // 将起始位置元素移动到末尾
arr[end] = temp; // 将末尾元素移动到起始位置
start++; // 移动起始指针
end--; // 移动结束指针
}
}
// 测试函数
int main() {
int n, i;
printf("请输入数字的数量: ");
scanf("%d", &n);
int numbers[n];
printf("请输入%d个数字:\n", n);
for(i = 0; i < n; i++) {
scanf("%d", &numbers[i]);
}
reverse(numbers, n); // 调用reverse函数逆序数组
printf("逆序排列后的数组是:\n");
for(i = 0; i < n; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
将n个数按输入顺序逆序排列,用函数实现,c语言
在C语言中,要实现将n个整数按照输入顺序逆序排列的功能,可以使用数组并结合循环来完成。这里是一个简单的示例,我们将创建一个名为`reverse_array`的函数,它接受一个整数数组和数组长度作为参数:
```c
#include <stdio.h>
// 函数声明,接收数组和其大小
void reverse_array(int arr[], int n);
int main() {
// 测试用例
int numbers[] = {5, 3, 8, 1, 6};
int size = sizeof(numbers) / sizeof(numbers[0]);
printf("Original array: ");
for (int i = 0; i < size; i++) {
printf("%d ", numbers[i]);
}
// 调用函数反转数组
reverse_array(numbers, size);
printf("\nReversed array: ");
for (int i = 0; i < size; i++) {
printf("%d ", numbers[i]);
}
return 0;
}
// 实现逆序函数
void reverse_array(int arr[], int n) {
int start = 0;
int end = n - 1;
while (start < end) {
// 交换开始位置和结束位置的元素
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
// 更新索引
start++;
end--;
}
}
```
在这个例子中,我们首先打印原始数组,然后调用`reverse_array`函数将其逆序,最后再打印逆序后的数组。`reverse_array`函数通过两个指针从两端向中间移动,并在每次迭代中交换对应的元素。
阅读全文