用C语言完成如下:编写函数实现删除一维整型数组中指定元素,在主函数输入数组和输出数组(假设数组元素各不相同)。
时间: 2024-01-24 12:17:02 浏览: 102
以下是用C语言实现删除一维整型数组中指定元素的函数代码:
```c
#include <stdio.h>
void delete_element(int arr[], int n, int element) {
int i, j;
for (i = 0, j = 0; i < n; i++) {
if (arr[i] != element) {
arr[j++] = arr[i];
}
}
}
int main() {
int arr[100], n, i, element;
printf("Enter the number of elements in the array: ");
scanf("%d", &n);
printf("Enter the elements of the array: ");
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
printf("Enter the element to be deleted: ");
scanf("%d", &element);
delete_element(arr, n, element);
printf("The updated array is: ");
for (i = 0; i < n - 1; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
在上面的代码中,我们定义了一个名为 `delete_element` 的函数,该函数接收一个整型数组 `arr`、数组长度 `n` 和要删除的元素 `element` 作为参数。该函数使用两个循环变量 `i` 和 `j` 遍历数组 `arr`。如果当前元素不等于要删除的元素,将其复制到新数组的下一个位置,并递增 `j`。最后,我们将新数组的长度设置为 `j`,即删除了指定元素之后的数组长度。
在主函数中,我们首先获取数组的长度和元素。然后,我们获取要删除的元素,并调用 `delete_element` 函数来删除它。最后,我们输出更新后的数组元素。
请注意,上述代码只能删除一次出现的指定元素。如果要删除多个相同的元素,需要多次调用 `delete_element` 函数。
阅读全文