一个已经排序好的数组,插入一个数后(比如 5 ),数组仍然有序,我的程序为什么排不了?
#include "stdio.h"
main()
{ char a[6]={'1','4','6','8','10'};
int i,k,j,max;
k=getchar();
max=a[4];
if (k>max) a[5]=k;
if (k<max)
{ for(j=3;j>=i;j++)
a[j+1]=a[j];
a[j]=k;
}
for (i=0;i<6;i++)
printf("%c",a[i]);
}
----------------解决方案--------------------------------------------------------
你写的好象和你的目标差的远了点
----------------解决方案--------------------------------------------------------
你要的是不是这个:
#include "stdio.h"
main()
{
char a[6]={'a','c','e','h','j'};
int i,k,j;
k=getchar();
for(j=4;j>=0;j--)
if (k>a[j])
{
for(i=4;i>j;i--)
a[i+1]=a[i];
a[j+1]=k;
break;
}
for (i=0;i<6;i++)
printf("%c ",a[i]);
getch();
}
----------------解决方案--------------------------------------------------------