用c语言 删除指定位置的元素 题目描述 删除一维数组中下标为 k 的元素。其中 n 和 k 都是用户输入的数值。n 是数组元素个数, k 是[0,n-1]区间内的数。 输入样例: 元素个数:6 数组为:1 2 3 4 5 6 删除的位置:3 输出样例: 删除后的数组:1 2 3 5 6
时间: 2024-02-27 13:51:38 浏览: 21
好的,针对您的问题,以下是C语言的代码实现:
```c
#include <stdio.h>
#define MAX_SIZE 100
int main() {
int n, k;
int arr[MAX_SIZE];
int i, j;
// 输入元素个数和数组元素
printf("元素个数:");
scanf("%d", &n);
printf("数组为:");
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// 输入要删除的位置
printf("删除的位置:");
scanf("%d", &k);
// 删除指定位置的元素
for (i = k; i < n - 1; i++) {
arr[i] = arr[i + 1];
}
n--; // 数组元素个数减1
// 输出删除后的数组
printf("删除后的数组:");
for (i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
代码的思路是:先输入元素个数和数组元素,然后输入要删除的位置,接着将该位置后面的所有元素往前移动一位,最后将数组元素个数减1,输出删除后的数组。
需要注意的是,这里没有对数组越界进行判断,请在实际使用中注意边界情况的处理。