第2个回答 2008-08-10
找到这个数后把后面的数依次前提一位,输出时丢弃找到的最后几个..
#define N 10
main(){
int a[N]={1,3,7,61,86,12,75643,8989,1,3} ;
int i,j,tem,delnum;
tem=0;
printf("\nEnter del num:");
scanf("%d",&delnum);
for(i=0;i<N-tem;i++){
if(a[i]==delnum){
tem++;
for(j=i;j<N-tem;j++)
a[j]=a[j+1];
}
}
printf("\n");
for(i=0;i<N-tem;i++)
printf("%d,",a[i]);
getch();
return;
}
第4个回答 2020-03-08
一维数组啊,其实实现一个数的删除很简单啊,只要不输出就行,你说的那个方法也行,或者直接记住这个下标,输出时加个条件判断就行,达到目的就好了,不必拘泥形式。
#include<stdio.h>
int
main()
{
int
a[2][2]={1,2,3,4},n;
printf("input
the
number
to
delete:");//输入查找的数
scanf("%d",&n);
for(int
i=0;i<2;i++)
for(int
j=0;j<2;j++)
if(a[i][j]==n)
a[i][j]=0;//找到修改成0,只能修改
不能删除
//输出
for(int
i=0;i<2;i++)
for(int
j=0;j<2;j++)
printf("%d",a[i][j]);
getchar();
getchar();
return
0;
}