C语言编程问题(用一维数组) 200
题目描述在某数组中删除某个数据x(前提x在该数组中一定存在,且有多个),并输出删除后数组的内容输入第一行输入n和x,其中n(n>2)表示数组中有效的元素个数,x表示要删除...
题目描述
在某数组中删除某个数据x(前提x在该数组中一定存在,且有多个),并输出删除后数组的内容
输入
第一行输入n和x,其中n(n > 2)表示数组中有效的元素个数,x表示要删除的数据 第二行输入n个整数,存放到数组中
输出
删除x后数组的内容,同一行输出,数据之间用空格隔开
样例输入
7 23
2 3 23 5 23 89 56
样例输出
2 3 5 89 56 展开
在某数组中删除某个数据x(前提x在该数组中一定存在,且有多个),并输出删除后数组的内容
输入
第一行输入n和x,其中n(n > 2)表示数组中有效的元素个数,x表示要删除的数据 第二行输入n个整数,存放到数组中
输出
删除x后数组的内容,同一行输出,数据之间用空格隔开
样例输入
7 23
2 3 23 5 23 89 56
样例输出
2 3 5 89 56 展开
4个回答
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2018-08-20
展开全部
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i;
int n,x;
int l;
int t;
int * a=NULL;
scanf("%d%d",&n,&x);
a=(int *)calloc(n,sizeof(int));
for(i=0,l=0;i<n;i++,l++)
{
scanf("%d",&t);
if(t!=x)
*(a+l)=t;
else
l--;
}
for(i=0;i<l;i++)
printf("%d ",*(a+i));
free(a);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询