在C++中,数组是固定长度的,无法直接删除元素。但是可以通过移动元素的方式间接删除特定元素。以下是一种删除数组中特定元素的方法:
#include <iostream>
int main() {
int arr[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int size = 10;
int deleteValue = 5; // 要删除的元素
int i, j;
for (i = 0; i < size; i++) {
if (arr[i] == deleteValue) {
// 将后面的元素依次向前移动
for (j = i; j < size - 1; j++) {
arr[j] = arr[j + 1];
}
size--; // 数组大小减一
}
}
// 打印删除元素后的数组
for (i = 0; i < size; i++) {
std::cout << arr[i] << " ";
}
return 0;
}
输出:
1 2 3 4 6 7 8 9 10
在上述代码中,首先创建一个长度为10的整型数组arr
,然后定义要删除的元素deleteValue
为5。使用两个循环,第一个循环遍历整个数组,当找到要删除的元素时,将后面的元素依次向前移动。第二个循环打印删除元素后的数组。最终输出结果为删除元素5后的数组。