2008秋季-计算机软件基础-有序表合并 教材 P79, ex3

/*  Author: Eman Lee  */
/* 计算机软件基础 教材 P79, ex3 */
#include 
< stdio.h >
#include 
< stdlib.h >
int  insert( int  a[], int  arrayLength, int   * listLength, int  x)
{
  
int  i,j;
  
if ( * listLength + 1 == arrayLength)
        
return   0 ; /* fail */
  
for (i = 0 ;i <* listLength;i ++ )
  {
   
if (a[i] >= x) /* search successfully */
   {
    
for (j =* listLength;j > i;j -- )
       a[j]
= a[j - 1 ]; /* move */
    a[i]
= x;
    (
* listLength) ++ ;
    
return   1 ; /* success */
   }
  
  }
   (
* listLength) ++ ;
   a[i]
= x;
  
return   1 ; /* success */
}

void  show( int  a[], int  listLength)
{
 
int  i;
 
for (i = 0 ;i < listLength;i ++ )
     printf(
"  %d  " ,a[i]);
}

void  main()
{
    
int  a1[ 100 ] = { 1 , 3 , 5 , 7 , 9 };
    
int  a2[ 100 ] = { 0 , 2 , 4 , 6 , 8 , 10 };
    
int  listLength = 5 ;
    
int  listLength2 = 6 ;
    
int  i;
    
for (i = 0 ;i < listLength2;i ++ )
        insert(a1,
100 , & listLength,a2[i]);

    show(a1,listLength);
    getchar();
}

你可能感兴趣的:(2008)