永发信息网

C语言编写函数,从一个排好序的整型数组中删去某数

答案:3  悬赏:80  手机版
解决时间 2021-01-14 16:49
  • 提问者网友:爱了却不能说
  • 2021-01-14 09:33
C语言编写函数,从一个排好序的整型数组中删去某数
最佳答案
  • 五星知识达人网友:我住北渡口
  • 2021-01-14 11:11

#include 
void deletex(int a[],int &n,int x)
{int i;
 for(i=0;i if(i==n||a[i]>x)
 {printf("fail!
"); return;}
 for(;i n--;
 for(i=0;i   printf("%d ",a[i]);
 printf("
");  
}
int main()
{int n,i,x,a[200];
 char c=' ';
 for(n=0;c!='
';n++)
   scanf("%d%c",&a[n],&c);
 scanf("%d",&x);
 deletex(a,n,x);
 return 0; 
}
全部回答
  • 1楼网友:孤老序
  • 2021-01-14 12:29
#include 
int main()
{
    int a[10],num,i,k=-1;
    for(i=0;i<10;i++) scanf("%d",&a[i]);
    scanf("%d",&num);
    for(i=0;i<10;i++)
    {
        if(a[i]==num) k=i;
    }
    for(i=k;i<9;i++)
    {
        a[i]=a[i+1];
    }
    if(k=-1) printf("fail!");
    else   for(i=0;i<9;i++)    printf("%d ",a[i]);
    return 0;
    }
  • 2楼网友:时间的尘埃
  • 2021-01-14 11:41
#include 
void main(){
int i,j,n,k=1,m=10,a[10];//定义参数m,以确定最后剩余元素个数
for(i=0;i<10;i++)
scanf("%d",&a[i]);
scanf("%d",&n);
for(i=0;iif(a[i]==n)
{
for(j=i;ja[j]=a[j+1];
i--;m--;k=0;//i--的原因是防止有连续若干元素和要查找的数相等
}
if(k) printf("fail!");
else 
for(i=0;iprintf("%d ",a[i]);
}
注意本题排好序的数组中可能有连续相等的元素和输入要查找的数相同。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯