【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; 
}
相关推荐
清酒难咽5 小时前
算法案例之递归
c++·经验分享·算法
让我上个超影吧6 小时前
【力扣26&80】删除有序数组中的重复项
算法·leetcode
z20348315206 小时前
C++对象布局
开发语言·c++
张张努力变强7 小时前
C++ Date日期类的设计与实现全解析
java·开发语言·c++·算法
沉默-_-7 小时前
力扣hot100滑动窗口(C++)
数据结构·c++·学习·算法·滑动窗口
钱彬 (Qian Bin)7 小时前
项目实践19—全球证件智能识别系统(优化检索算法:从MobileNet转EfficientNet)
算法·全球证件识别
feifeigo1237 小时前
基于EM算法的混合Copula MATLAB实现
开发语言·算法·matlab
漫随流水7 小时前
leetcode回溯算法(78.子集)
数据结构·算法·leetcode·回溯算法
斐夷所非8 小时前
C++ 继承、多态与类型转换 | 函数重载 / 隐藏 / 覆盖实现与基派生类指针转换
c++
全栈游侠8 小时前
数据结构 - 链表
数据结构·链表