You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C语言如何实现输入数组与对应逆序数组的并排输出

问题解决方案

核心调整逻辑

你原代码的问题是分两次独立遍历打印原数组和逆序数组,自然会分成上下两部分输出。要实现并排对齐效果,只需要在同一轮循环里同时打印原数组第i位元素、和逆序对应位置的元素即可,无需额外创建逆序数组。

调整后完整代码

#include <stdio.h>

#define N 10

int main(){
    int a[N], i;
    for(i = 0; i < N; i++){
        scanf("%d", &a[i]);
    }
    // 打印表头(可选,方便区分数组)
    printf("原数组\t逆序数组\n");
    for(i = 0; i < N; i++){
        // 用固定宽度的格式控制符保证对齐
        printf("%4d\t%4d\n", a[i], a[N - 1 - i]);
    }
    return 0;
}

关键优化点说明

  • 打印时使用%4d格式控制符,固定每个数字占4个字符宽度,无论输入数字是几位都能保证列对齐,可根据实际输入数字的长度调整数值
  • 逆序位置的元素直接通过下标N-1-i计算获取,不需要额外开辟内存存储逆序数组,资源占用更低
  • 两列之间用制表符\t分隔,也可替换为多个空格自定义间距

内容的提问来源于stack exchange,提问作者lukn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 11:54:07