【发布时间】:2020-04-08 07:34:19
【问题描述】:
我查看了几个这种冒泡排序的示例,但似乎无法找出我的问题所在, 我对循环等很弱。 我明天必须向我的班级解释这一点,如果有人能提供帮助,那就太好了,谢谢。
int main(){
int i,n,j,temp;
int a[] = {5,4,3,2,1};
n = 5;
for(i=0;i<n;i++){
for(j = 0;j<n-i-1;j++){
if(a[j]>a[j+1]){
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
printf("%d",a[i]);
}}
【问题讨论】:
-
出了什么问题?如果您在每次更改发生时打印出来怎么办?
-
您的
printf放错地方了!等到排序完成,然后有一个单独的循环打印出值 - 你会对结果感到惊讶! -
至少将 printf() 放在一个单独的循环中。并添加一个'\n'。
标签: c sorting bubble-sort