为什么我的冒泡排序不起作用。

qq_53643374 2021-03-13 05:29:48
...全文
241 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
源代码大师 2021-05-03
  • 打赏
  • 举报
回复
C和C++完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html C和C++算法完整教程:https://blog.csdn.net/it_xiangqiang/category_10768339.html
zgl7903 2021-03-14
  • 打赏
  • 举报
回复

void sort(int x[], int n)
{
  int i,j,t;
  for(i=0; x && i<n-1; i++)
  {
    for(j=i+1; j<n; j++)
    {
      if(x[i] > x[j])
      {
        t=x[i]; x[i]=x[j]; x[j]=t;
      }
    }
  }
}

快乐胖电工 2021-03-14
  • 打赏
  • 举报
回复
路过围观,学习
Simple-Soft 2021-03-14
  • 打赏
  • 举报
回复
自信男孩 2021-03-13
  • 打赏
  • 举报
回复
引用 2 楼 qq_53643374 的回复:
[quote=引用 1 楼 自信男孩的回复:]select_sort函数里操作的是局部变量a数组,不是用的x,因此排序的是局部数据a排序了,没有对x开始的内存排序,x指向即main函数里的a数组。

另外,冒泡bubble_sort建议改一下函数名;

select_sort是选择排序。
改了提高代码的可读性~

那要怎么改那[/quote]

把select_sort函数里的a用x替换;

另外,去掉a[20]的定义吧。用到的数组。
qq_53643374 2021-03-13
  • 打赏
  • 举报
回复
引用 1 楼 自信男孩的回复:
select_sort函数里操作的是局部变量a数组,不是用的x,因此排序的是局部数据a排序了,没有对x开始的内存排序,x指向即main函数里的a数组。

另外,冒泡bubble_sort建议改一下函数名;

select_sort是选择排序。
改了提高代码的可读性~
那要怎么改那
自信男孩 2021-03-13
  • 打赏
  • 举报
回复
select_sort函数里操作的是局部变量a数组,不是用的x,因此排序的是局部数据a排序了,没有对x开始的内存排序,x指向即main函数里的a数组。

另外,冒泡bubble_sort建议改一下函数名;

select_sort是选择排序。
改了提高代码的可读性~

70,023

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧