源程序:
#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("原数组为:
");
for(i=0;i<6;i++)
printf("%4d",s[i]);
printf("
");
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("
");
}
运行结果: