编写一个c语言程序使得将一个数组中的元素逆序存放。例如,原来顺序是12,3,11,14,21,15,25,18,22,27,逆序后为27,22,18,25,15,21,14,11,3,12。
时间: 2024-05-08 11:18:14 浏览: 32
非常感谢您的问题,这是一个编程问题,可以通过编写如下的C语言程序来实现将数组中的元素逆序存放:
```c
#include<stdio.h>
void reverse(int arr[], int size) {
int temp;
for (int i = 0; i < size / 2; i++) {
temp = arr[i];
arr[i] = arr[size - 1 - i];
arr[size - 1 - i] = temp;
}
}
int main() {
int arr[] = { 12, 3, 11, 14, 21, 15, 25, 18, 22, 27 };
int size = sizeof(arr) / sizeof(arr[0]);
reverse(arr, size);
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
上述程序的输出结果应为:27 22 18 25 15 21 14 11 3 12
希望这个代码对您有所帮助,感谢您的提问!
相关问题
c语言编写一个函数 Inverse0,实现将字符数组中的字符串逆序存放的功能。用数组a存放逆序存放前的数组元素,用数组b存放逆序存放后的数组元素。
好的,以下是C语言实现的代码:
```c
void Inverse0(char* str) {
char a[1000], b[1000];
int len = strlen(str);
for (int i = 0; i < len; i++) {
a[i] = str[i];
}
for (int i = 0; i < len; i++) {
b[i] = a[len - i - 1];
}
for (int i = 0; i < len; i++) {
str[i] = b[i];
}
}
```
以上代码中,我们先将原始字符串按照顺序存储到数组a中,然后再将数组a中的元素按照相反的顺序存储到数组b中,最后再将数组b中的元素按照顺序存储回原始字符串中,即可实现字符串逆序存放的功能。
请注意,由于我们使用了数组a和数组b,因此需要定义一个足够大的数组来存储字符串,以上代码中我们定义了大小为1000的数组。如果您的字符串比较长,可能需要调整数组的大小。
C语言编写程序,输入6个整数存入数组中,按输入顺序的逆序存放在该数组中并输出
以下是C语言程序实现:
```c
#include <stdio.h>
int main() {
int arr[6];
int i;
// 输入6个整数存入数组中
printf("请输入6个整数:\n");
for (i = 0; i < 6; i++) {
scanf("%d", &arr[i]);
}
// 按输入顺序的逆序存放在该数组中
for (i = 0; i < 3; i++) {
int temp = arr[i];
arr[i] = arr[5 - i];
arr[5 - i] = temp;
}
// 输出反转后的数组
printf("反转后的数组为:");
for (i = 0; i < 6; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
这个程序中,我们首先定义了一个长度为6的整型数组`arr`,并通过for循环读取6个整数并存储到该数组中。接下来,我们使用for循环反转数组元素的顺序。最后,我们输出反转后的数组元素。