添加并排序
在一个已经排好序的数组,现输入一个数,要求按原来的规律将它插入数组中。如下,可是不太理解#include <stdio.h>
#define uchar unsigned char
#define uint unsigned int //9
uchar a[10]={4,6,8,11,28,66,79,100,102},b[10];
main()
{
uint m;
uchar i=0,j,k;
printf("请输入一个数字!回车结束!\n");
scanf("%d",&m); //输入值存m
for(j=0;j<9;j++) //从数组左侧开始判断
{
if(m>a[j]) //若输入值小于或等于此处数组元素 则把m赋值到b数组相应的位置 再跳出循环
{
b[j]=a[j];
i=j; //设置标志位
}
else
{
b[j+1]=a[j];
} //若输入值大于此处的数组元素 则把a数组中的元素传递到b的相对位置
}
b[i+1]=m;
for(k=0;k<10;k++) //输出数组b
printf("%d\t",b[k]);
}