实现一个函数,传递一个有10个已经排好序的整形元素数组(数组大小实际为11)中,将一个指定的值按顺序插入,并在main函数中将插入后的数组输出。

来源:互联网 发布:护士资格证题库软件 编辑:程序博客网 时间:2024/05/14 21:48

#include<stdio.h>

int add_data(int* array,int length );

int main() {

   int array[11],i;

   add_data(array,11);

   for(i=0; i<11; i++) {

       printf("%d",array[i]);

    }

   printf("\n");

}


int add_data(int* array,int length ) {

   int i,j,num;

    

   for(i=0 ; i<length-1; i++ ) {

       scanf("%d",&array[i]);

    }

   scanf("%d",&num);

   for(i=0; i<length-1; i++) {

       if((array[0]<array[1] && num<=array[0]) || (array[0]>array[1] && num>=array[0])) {

            array[length-1-i] = array[length-2-i];

        }else

           if((array[i]<=num && num<=array[i+1])||(array[i]>=num && num>=array[i+1])) {

               for(j=length-1; j>i+1; j--) {

                    array[j] = array[j-1];

                }

                array[i+1] = num;break;

            }

   else

     if((array[0]<array[1] && num>= array[length-2]) ||(array[0]>array[1] && num<= array[length-2])) array[length-1] = num;

    }

   if((array[7]<array[8] && num<=array[0]) || (array[7]>array[8] && num>=array[0]))  {

        array[0] = num;

    }

   return 0;

}


0 0
原创粉丝点击