题解 | #序列中删除指定数字# #函数
序列中删除指定数字
https://www.nowcoder.com/practice/7bbcdd2177a445a9b66da79512b32dd7
#include <stdio.h>
#include <stdlib.h>
int* delete(int *arr,int b,int n)
{
int *arr2 =(int*)malloc(sizeof(int)*50);
int i,sum = 0;
for(i = 0;i<n;i++)
{
if(*(arr+i)!=b)
{
*(arr2+sum) = *(arr+i);
sum++;
}
}
*(arr2+sum) = -1;
return arr2;
}
int main() {
int i, n, b;
int *arr = (int*)malloc(n*sizeof(int));
scanf("%d",&n);
for(i = 0;i<n;i++)
scanf("%d",arr+i);
scanf("%d",&b);
arr = delete(arr,b, n);
int sum =0;
i = 0;
while(*(arr+i)!=-1)
{
i++;
sum++;
}
for(i=0;i<sum;i++)
printf("%d ",*(arr+i));
return 0;
}
查看21道真题和解析