哓拾柒
2021-10-26 07:51
采纳率: 33.3%
浏览 38

请问我的代码为什么运行不对?

#include<stdio.h>
void bubble_sort(int arr[],int sz)
{
int i = 0;

for (i = 0; i < sz - 1; i++)
{
    int j = 0;
    for (j = 0; j < sz - 1-i; j++);
    {
        if (arr[j] > arr[j + 1])
        {

            
            int tmp = arr[j];                
            arr[j] = arr[j + 1];
            arr[j + 1] = tmp;
        }
    }
}

}
int main()
{

int arr[] = { 9,8,7,6,5,4,3,2,1,0 };
int sz = sizeof(arr) / sizeof(arr[0]);
int i= 0;
bubble_sort(arr, sz);
for(i = 0; i < sz; i++);
{
    printf("%d", arr[i]);
}
return 0;

}

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 南方航空 2021-10-26 08:38
    已采纳
    for (j = 0; j < sz - 1-i; j++);和for(i = 0; i < sz; i++);后面分号去掉,for循环后面不能用分号,用了性质就变了,for (i = 0; i < sz - 1; i++)应该为for (i = 0; i < sz; i++),    for (j = 0; j < sz - 1-i; j++)应该为 for (j = 0; j < sz -i; j++)
    
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题