【C++题解】1162 - 数组元素的删除

问题:1162 - 数组元素的删除

类型:数组元素移动


题目描述:

把一个数组的第 x 个位置的元素删除掉。

输入:

输出有三行:

第一行有一个整数 n ( n≤10 );

第二行有 n 个整数(每个整数在1~1000之间);

第三行有一个整数 x(1≤x≤n),为要删除的位置。

输出:

输出更新后的数组。

样例:

输入:

cpp 复制代码
5
1 2 3 4 5 
3

输出:

cpp 复制代码
1 2 4 5

完整代码如下:

cpp 复制代码
#include<iostream>
using namespace std;

int main(){
    // 一、分析问题
    // 已知:用户将输入一个数组和一个要删除的元素的位置。
    // 未知:删除指定位置的元素后的新数组。
    // 关系:将指定位置之后的所有元素向前覆盖移动一位。

    // 二、数据定义
    int n;
    int a[100]; 
    int x;

    // 三、数据输入
    cin >> n; 
    for(int i = 0; i < n; i++){
        cin >> a[i]; 
    }
    cin >> x; 

    // 四、数据计算 - 删除指定位置的元素
    --x; 
    for(int i = x; i < n - 1; i++){
        a[i] = a[i + 1]; 
    }

    // 五、输出结果 - 输出删除元素后的数组
    for(int i = 0; i < n - 1; i++){
        cout << a[i] << " "; 
    }

    return 0; 
}
相关推荐
Navigator_Z4 小时前
LeetCode //C - 1089. Duplicate Zeros
c语言·算法·leetcode
cany10004 小时前
C++ -- 可变参数模板
c++
不会C语言的男孩6 小时前
C++ Primer 第2章:变量和基本类型
开发语言·c++
云泽8087 小时前
C++ 可调用对象通关指南:深度解析 Lambda 表达式、function 包装器与 bind 绑定器
开发语言·c++·算法
wlsh157 小时前
Go 迭代器
算法
Tri_Function7 小时前
简单图论大学习
c++
语戚8 小时前
力扣 3161. 块放置查询:线段树解法(Java 实现)
java·算法·leetcode·面试·线段树·力扣·
lqqjuly8 小时前
C++ 完整知识体系—从基础语法到现代 C++23 的系统性总结
c++·c++23
CS创新实验室8 小时前
从顺序表到动态数组:数据结构的永恒基石与现代语言的优雅封装
数据结构·算法
王老师青少年编程8 小时前
信奥赛C++提高组csp-s之FHQ Treap
c++·csp·平衡树·信奥赛·csp-s·提高组·fhq treap