C语言学习-菜鸟教程C经典100例-练习40
题目
将一个数组逆序输出。
思路
使用一个临时数组交换第一个数和最后一个数
代码
c
#include <stdio.h>
#define MAX_SIZE 100
int main(){
int arr[MAX_SIZE];
int n; // 数组元素个数
// 输入数组元素个数
printf("请输入数组元素个数(不超过%d):", MAX_SIZE-1);
scanf("%d", &n);
// 判断数组范围有效
if(n <= 0 || n >= MAX_SIZE){
printf("输入的数组大小不合法!\n");
return 1;
}
printf("请输入%d个整数:\n", n);
for(int i=0; i<n; i++){
scanf("%d", &arr[i]);
}
// 原始数组
printf("\n原始数组:\n");
for(int i=0; i<n; i++){
printf("%d ", arr[i]);
}
printf("\n");
// 用临时数组对数组逆序
int temp[MAX_SIZE];
for(int i=0; i<n; i++){
temp[i] = arr[n-1-i];
}
// 输出逆序数组
printf("\n逆序输出的数组:\n");
for(int i=0; i<n; i++){
printf("%d ", temp[i]);
}
printf("\n");
return 0;
}
输出结果
c
请输入数组元素个数(不超过99):10
请输入10个整数:
0 1 2 3 4 5 6 7 8 9
原始数组:
0 1 2 3 4 5 6 7 8 9
逆序输出的数组:
9 8 7 6 5 4 3 2 1 0