輸入若干有序數放在數組中,然后輸入一個數,插入到此有序數列中,插入后,數組中的數仍然有序。請對插在最前、插在最后、插在中間三種情況運行程序,以便驗證程序是否正確。


源程序:

#include <stdio.h>
#define M 6
int wnn1(int *,int,int);
void wnn2(int *,int);

void main()
{
int i,x,n,t,s[M+1]={10,15,18,24,29,35};
printf("原數組為:\n");
for(i=0;i<6;i++)
printf("%4d",s[i]);
printf("\n\n");
printf("請輸入一個整數:");
scanf("%d",&x);
n=M;
t=wnn1(s,x,n);
wnn2(s,t);
}

int wnn1(int *a,int x,int n)
{
int i,j=0;
while(j<n&&a[j]<x)j++;
for(i=n-1;i>=j;i--)a[i+1]=a[i];
a[j]=x;
n++;
return n;
}

void wnn2(int *a,int n)
{
int i;
for(i=0;i<n;i++)
printf("%4d",a[i]);
printf("\n");
}

運行結果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM