在C語言中,數組是一個固定長度的數據結構,無法直接刪除元素。但可以通過移動元素的方式來實現刪除指定元素的效果。下面是一個示例代碼:
#include <stdio.h>
// 刪除指定元素
void deleteElement(int arr[], int size, int element) {
int i, j;
// 遍歷數組查找要刪除的元素
for (i = 0; i < size; i++) {
if (arr[i] == element) {
// 找到要刪除的元素后,將后面的元素向前移動一個位置
for (j = i; j < size - 1; j++) {
arr[j] = arr[j + 1];
}
// 將最后一個元素置為0(或其他特定值)
arr[size - 1] = 0;
// 刪除成功后,退出循環
break;
}
}
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
int element = 3;
printf("原始數組:");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
deleteElement(arr, size, element);
printf("\n刪除元素%d后的數組:", element);
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
return 0;
}
運行結果:
原始數組:1 2 3 4 5
刪除元素3后的數組:1 2 4 5 0
上述代碼中,deleteElement
函數實現了刪除指定元素的功能。首先,它遍歷數組查找要刪除的元素,找到后將后面的元素向前移動一個位置,然后將最后一個元素置為0(或其他特定值)。最后,在main
函數中調用deleteElement
函數來刪除指定元素,并輸出結果。