数组顺序颠倒C语言
时间: 2023-10-25 21:22:31 浏览: 103
下面是将数组顺序颠倒的C语言代码:
```c
#include <stdio.h>
void reverseArray(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[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
printf("Original array: ");
for(int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
reverseArray(arr, size);
printf("\nReversed array: ");
for(int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
运行结果为:
```
Original array: 1 2 3 4 5
Reversed array: 5 4 3 2 1
```
相关问题
c语言将数组中的数颠倒顺序重新存放
可以使用一个循环来实现将数组中的数颠倒顺序重新存放,具体步骤如下:
1.定义一个数组并初始化;
2.使用一个循环遍历数组中的元素,从数组开头和结尾同时取值,并交换它们的位置,直到遍历至数组中间;
3.遍历完毕后,数组中的元素顺序就被颠倒了。
下面是示例代码:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5};
int len = sizeof(arr) / sizeof(arr[0]);
for (int i = 0; i < len / 2; i++) {
int temp = arr[i];
arr[i] = arr[len - i - 1];
arr[len - i - 1] = temp;
}
printf("颠倒后的数组为:");
for (int i = 0; i < len; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
输出结果为:
```
颠倒后的数组为:5 4 3 2 1
```
注意:上述代码中,我们将数组长度除以2是因为数组中的元素交换是成对的,若数组长度为奇数,则中间的元素不需要交换。
.从控制台任意输入五个整数,存入数组中,完成以下要求: ①格式化遍历数组 ②再将数组元素原有的顺序颠倒过来,格式化遍历数组(反向遍历数组不得分) ③求出数组中的最大值 ④求出数组中的最小值 ⑤求出数组中最大的偶数 ⑥求出数组中最大的奇数 C语言
好的,以下是 C 语言的代码实现:
```c
#include <stdio.h>
int main() {
int arr[5];
int i, max, min, max_even = -1, max_odd = -1;
// 输入五个整数
printf("请输入五个整数:\n");
for (i = 0; i < 5; i++) {
scanf("%d", &arr[i]);
}
// 格式化遍历数组
printf("数组元素为:");
for (i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
printf("\n");
// 将数组元素反转
for (i = 0; i < 5 / 2; i++) {
int temp = arr[i];
arr[i] = arr[5 - i - 1];
arr[5 - i - 1] = temp;
}
// 格式化遍历数组
printf("反转后数组元素为:");
for (i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
printf("\n");
// 求最大值和最小值
max = arr[0], min = arr[0];
for (i = 1; i < 5; i++) {
if (arr[i] > max) {
max = arr[i];
}
if (arr[i] < min) {
min = arr[i];
}
}
// 求最大的偶数和最大的奇数
for (i = 0; i < 5; i++) {
if (arr[i] % 2 == 0) {
if (arr[i] > max_even) {
max_even = arr[i];
}
} else {
if (arr[i] > max_odd) {
max_odd = arr[i];
}
}
}
printf("最大值为:%d\n", max);
printf("最小值为:%d\n", min);
printf("最大的偶数为:%d\n", max_even);
printf("最大的奇数为:%d\n", max_odd);
return 0;
}
```
具体解释可以看代码注释。
阅读全文