1 条题解

  • 0
    @ 2026-9-16 22:35:25

    注意下标就行

    #include<stdio.h>
    
    int main(){
        int n;
        int a[100];  // n最大为10,插入后最多11个,开大一点
        int x, y;
        
        scanf("%d", &n);
        for(int i = 0; i < n; i++) {
            scanf("%d", &a[i]);
        }
        scanf("%d", &x);
        scanf("%d", &y);
        
        // 从后往前移动,为插入腾出位置
        // 第 x 个位置对应下标 x-1
        for(int i = n; i >= x; i--) {
            a[i] = a[i-1];
        }
        a[x-1] = y;
        n++;  // 数组长度加 1
        
        // 输出
        for(int i = 0; i < n; i++) {
            printf("%d", a[i]);
            if(i < n-1) printf(" ");
        }
        
        return 0;
    }
    
    
    • 1

    信息

    ID
    228
    时间
    1000ms
    内存
    64MiB
    难度
    8
    标签
    递交数
    207
    已通过
    31
    上传者