在一维数组中删除1个等于x的元素。

 我来答
百度网友e8ca18df7
推荐于2017-09-23 · TA获得超过1060个赞
知道小有建树答主
回答量:861
采纳率:0%
帮助的人:644万
展开全部
数组a[N]为全局变量
void delete(int x)
{
for(int i=0;i<N;i++)
if(a[i]==x)//判断x是否等于a[i]
{
for(int j=i+1;j<N;j++)
a[j-1]=a[j];//将a[i]后面的元素往前移填充
a[N-1]='\0';//最后一个赋值空
}
}
todayistuesday
2011-04-26
知道答主
回答量:18
采纳率:0%
帮助的人:20.6万
展开全部
//assume that the array A consist of N elements
int i,j;
for(i=0;i<N;i++)//全部检查一遍
{
if (A[i]==x)
{
for(j=i+1;j<N;j++)//将删除后的每个数据往前移一格
A[j-1]=A[j];
N--;
break;//如果删除A中所有的x则删除这句break,若只删除第一个x则保留
}//end if
}//end for
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
c侗学
2011-04-26
知道答主
回答量:29
采纳率:0%
帮助的人:15.9万
展开全部
//在一维数组中删除1个等于x的元素
#include<stdio.h>
#include<string.h>
main()
{
char a[99];
char b[1];
int i,x,len,d;
printf("input numbers:\n");
gets(a);
len=strlen(a);
for(i=0;i<len;i++)
{
if(a[i]==x)
d=i;
}
for(i=d;i<len;i++)
{
b[1]=a[i];
a[i]=a[i+1];
a[i+1]=b[1];
}
puts(a);

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式