Description
   
     
      一个非递减有序的整型数组有n个元素,给定一个整数num,将num插入该序列的适当位置,使序列仍保持非递减有序。
     
    
     
      要求定义一个函数insert(),将整数num插入在数组a的适当位置上,函数原型如下:
     
     
    
     
      int insert(int a[], int n, int num);
     
     
    
     
      另外函数仍然调用以前定义过的函数PrintArr()
     
     输出数组所有元素。
    
    Input
   
     
      输入有三行。第一行是一个正整数n,n<1000。第二行是n个整数,第三行是待插入整数num。
     
    
    Output
   
     
      输出非递减有序的n+1个整数,数据之间用空格隔开。输出占一行。
     
    
    Sample Input
   
5
1 2 4 5 6
3
    Sample Output
   
1 2 3 4 5 6
    HINT
   
元素之间有空格,最后一个元素后面没有空格。
    Source
   
#include<stdio.h>
int main()
{
    int a[1000],q[1000],b,c,d,i,l,t;
    scanf("%d",&b);
    for(i=0;i<b;i++)
    {
    scanf("%d",&a[i]);
    }
    scanf("%d",&c);
    a[b]=c;
    for(i=0;i<=b;i++)
    q[i]=a[i];
    for(l=0;l<b+1;l++)
    for(i=0;i<b-l;i++)
    if(q[i]>q[i+1])
    {
    t=q[i];q[i]=q[i+1];q[i+1]=t;
    }   
    for(i=0;i<=b;i++){
    if(i==b)
   printf("%d",q[i]);
   else printf("%d ",q[i]);
   }
    }
 
版权声明:本文为sinat_25926481原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。