c语言在给定的数组中删除一个数
时间: 2023-05-23 16:05:11 浏览: 251
A:要删除数组中的一个数,首先需要确定要删除的元素在数组中的位置。可以遍历整个数组,找到要删除的元素,并记录其位置。然后,从该位置开始,将数组中的所有元素向前移动一个位置,覆盖掉要删除的元素。最后,将数组的长度减一即可。
下面是一个示例代码:
```c
#include <stdio.h>
void delete_element(int arr[], int len, int target) {
int i, j, pos = -1;
for (i = 0; i < len; i++) {
if (arr[i] == target) {
pos = i;
break;
}
}
if (pos == -1) {
printf("Error: Target element not found.\n");
return;
}
for (j = pos; j < len - 1; j++) {
arr[j] = arr[j+1];
}
len -= 1;
printf("Element deleted successfully.\n");
printf("Resulting array: ");
for (i = 0; i < len; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
int main() {
int arr[] = { 2, 4, 6, 8, 10 };
int len = sizeof(arr) / sizeof(arr[0]);
int target = 4;
delete_element(arr, len, target);
return 0;
}
```
输出:
```
Element deleted successfully.
Resulting array: 2 6 8 10
```