C语言学习-菜鸟教程C经典100例-练习40

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
相关推荐
·present·2 小时前
CSAPP(Bomb lab)
c语言·c++
wuminyu7 小时前
Java字节码学习总结:字节码如何加载、解析和执行
java·linux·c语言·jvm·c++
图灵-M10 小时前
【数据结构】静态 & 动态顺序表
c语言·数据结构·笔记
揽星河..10 小时前
【C语言】数组
c语言·开发语言·算法
水饺编程11 小时前
第2章:Linux 基础,制作【.tar.xz】压缩包文件
linux·c语言·汇编
揽星河..11 小时前
【C语言】函数
c语言·算法
Navigator_Z14 小时前
LeetCode //C - 1311. Get Watched Videos by Your Friends
c语言·算法·leetcode
可乐_不渴15 小时前
# C语言文件操作全解析:从 fopen 到 fclose,一文吃透文件 IO
linux·服务器·c语言
Zwawa1 天前
串口为什么会丢字节:从轮询到中断和环形缓冲区
c语言·单片机·嵌入式
揽星河..1 天前
【C语言】分支和循环
c语言·c++·算法