在C语言中,要删除指定位置的元素,需要将该位置后面的元素都向前移动一个位置,并更新数组的大小。以下是一个示例代码:
#include <stdio.h>
void deleteElement(int arr[], int size, int pos) {
if (pos < 0 || pos >= size) {
printf("Invalid position\n");
return;
}
for (int i = pos; i < size - 1; i++) {
arr[i] = arr[i + 1];
}
size--;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = 5;
int pos = 2;
deleteElement(arr, size, pos);
size--;
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
return 0;
}
在上面的示例中,我们定义了一个deleteElement
函数来删除数组中指定位置的元素。在main
函数中,我们定义了一个数组arr
,大小为5,然后调用deleteElement
函数删除位置为2的元素。最后遍历输出删除元素后的数组。