题目:在一个数组内移动指定元素,并返回新的数组长度,只能在本数组内移动
#include <stdio.h>
int remove_ele(int *arr,int n,int ele)
{
int i = 0;
int j = 0;
for(;i<n;i++)
{
if(arr[i] == ele){
continue;
}
arr[j] == arr[i];
j++;
}
return j;
}
测试数据:
int main()
{//第一组
int arr[] = {0,1,2,3,4,5,6,7,8,9};
int len = sizeof(arr)/sizeof(arr[0]);
printf("新数组的长度:%d\n",remove_ele(arr,len,5));
}
结果:
当我把数组改成这样的样子时:
int arr[] = {0,1,2,3,4,5,5,7,8,5};
输出的结果应该为7
结果为: