有一道并不复杂的c语言题目,就是搞不清楚错在哪里??

来源:百度知道 编辑:UC知道 时间:2024/05/21 13:17:37
#include<stdio.h>

void main()
{
int i,p,j,k;
int a[]={11,2,4,5,6,7,8,9,0,898};

// printf("请输入9个英文字母:" );
// gets(a);
for(i=1;i<10;i++){
k=a[i];
j=k-1;
while(j>=0&&a[j]>k){
a[j+1]=a[j];
j--;
}
a[j+1]=k;
}

for(i=0;i<10;i++){
printf("%d,",a[i]);
}
}

我不知道出错在哪里??请指教
实现排序功能
请用我的方法实现,就是插入法
谢谢

是为了实现什么功能?
排序?
#include<stdio.h>

void main()
{
int i,j,temp;
int a[]={11,2,4,5,6,7,8,9,0,898};

// printf("请输入9个英文字母:" );
// gets(a);
for(i=0;i<10;i++){
for(j=0;j<10-i-1;j++){
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(i=0;i<10;i++){
printf("%d\n",a[i]);
}
}