使用数组指针移动思路,测试的时候能通过,但是提交保存就过不了,希望大神帮忙看下:
#include <stdio.h>
void deleteElement(int nums[], int* size, int element) {
int found = 0, i;
for(i = 0; i < *size; i++) {
if(nums[i] == element) {
found = 1;
break;
}
}
if(found) {
// 向前移动
for(int j = i; j < *size; j++) {
nums[j] = nums[j + 1];
}
// 将指向的值减1,如果不加括号,则是修改指针的指向
(*size)--;
}
}
int main() {
int nums[20], n, del;
scanf("%d", &n);
for(int i = 0; i < n; i++) {
scanf("%d", &nums[i]);
}
scanf("%d", &del);
deleteElement(nums, &n, del);
for(int i = 0; i < n; i++) {
printf("%d ", nums[i]);
}
printf("\n");
return 0;
}