|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 iaistudy 于 2011-6-26 19:16 编辑
代码功能:输入10个数字,从大到小排列,然后输入一个数字,按大小插入其中。
输入10个数字,排序可以实现,但再次输入一个数字按大小插入这十个数字中,,,就有问题了。求教怎么回事儿!!!
#include<stdio.h>
main()
{
int j,k,p,q,s,n,a[11];
printf("Please input ten numbers:\n");
for(k=0;k<10;k++)
{
scanf("%d",&a[k]);
}
printf("input numbers is over!!!\n");
printf("you input numbers is:\n");
for(k=0;k<10;k++)
{
printf("%d ",a[k]);
}
printf("\nThe big to the small is:\n");
for(k=0;k<10;k++)
{
p=k;q=a[k];
for(j=k+1;j<10;j++)
if(q<a[j])
{
p=j;
q=a[j];
}
if (p!=k)
{
s=a[k];
a[k]=a[p];
a[p]=s;
}
printf("%d ",a[k]);
}
printf("\ninput number:\n");//这儿开始执行就有问题了,后面不能输出插入一个数字的正确结果
scanf("%d",&n);
for(k=0;k<10;k++)
if(n>a[k])
{
for(s=9;s>=k;s--)
a[s+1]=a;
break;
}
a[k]=n;
for(k=0;k<=10;k++);
printf("%d",a[k]);
printf("\n");
}
|
|