c语言冒泡排序的结果中突然出现数据变成0

#include
#include
#define N 5

int number[N]={99999,99998,99997,99996,99995};
int num;

void pr(){
int i=0;
for(i=0;i printf("%d\n",number[i]);
}
}
void sort_order(){
int i,k;
for(i=0;i for(k=0;k if(number[k]>=number[k+1]){
num = number[k];
number[k] = number[k+1];
number[k+1] = num;
}
}
}
pr();
}

int main(int argc, char const *argv[])
{
number[0]=32767;
pr();
sort_order();
return 0;
}

上述代码运行后,结果中无故出现一个数据 0
困扰我很久了 感觉冒泡排序算法应该没错
希望有人指点一下 谢谢!
结果图片:
图片说明

1个回答

 for(k=0;k<N-i;k++){
->
for(k=0;k<N-i-1;k++){
qq_27504375
enter回车键 回复酱鸭: 你看看 最大值也不见了
3 年多之前 回复
qq_27504375
enter回车键 回复酱鸭: 数组越界了
3 年多之前 回复
m0_37131359
酱鸭 出现0的原因是什么?
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐