实现在一维数组中查找、插入和删除一个元素的操作

 以一个含有5个元素的一维数组为例

/* 编程实现在一维数组中查找、插入和删除一个元素的操作。 */
#include "stdio.h"
#define N 5
int main()
{
   
    int m,n,t,i,x,k,j,a[N]={1,2,3,4,5}; 
    //插入
      printf("数组为:");
    for ( i = 0; i < N; i++)
    {
       printf(" %d",a[i]);
    }
    putchar('\n');
    printf("输入要插入的数:");
    scanf("%d",&m);
    printf("插入到第几项之后:");
    scanf("%d",&n);
    for (i=N; i >n; i--)
    {
     a[i]=a[i-1];

    }
    a[n]=m;
    for ( i = 0; i < N+1; i++)
    {
        printf("% d",a[i]);
    }
    putchar('\n'); 
    


    //查找
    printf("输入要查找的数:");
    scanf("%d",&m);
    for ( i = 0; i < N;i++)
    {
        t=a[i];
        if (t==m)
        {
            printf("%d在数组中\n",m);
            break;
            
        }
        if (i==N-1&&t!=m)
        {
            printf("%d不在数组中\n",m);
            break;
        }
        
    }
 
    //删除
    printf("数组为:");
    for ( i = 0; i < N; i++)
    {
       printf(" %d",a[i]);
    }
    putchar('\n');
    printf("请输入需要删除的一个整数:");
    scanf("%d",&x); 
      i=0;
      j=N-1;
    while(i<=j)
      { k=(i+j)/2 ;
       if(a[k]==x) break; 
       if(a[k]>x)  j=k-1; 
       if(a[k]j) printf("需要删除的数不在数组中\n");
      else  
      { for( ;k

你可能感兴趣的:(C语言,c语言,算法,经验分享)