大神帮我看看这个冒泡哪里错了

# include <stdio.h> void sort(int * a, int len) { int i, j, t; for (i=0; i<len-1; ++i) { for (j=0; j<len-1-i; ++j) { if (a[j] > a[j+i]) { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } } } } int main(void) { int a[6] = {7, 3, 5, -9, 10, 22}; int i = 0; sort(a, 6); for (i=0; i<6; ++i) { printf("%d ", a[i]); } printf("\n"); return 0; }
...全文
52 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
自信男孩 2019-08-12
  • 打赏
  • 举报
回复
if (a[j] > a[j+i])
j和j+1比较,而不是和j+i比较。
weixin_45190520 2019-08-12
  • 打赏
  • 举报
回复
估计是抄别人的抄错了吧😂
Intel0011 2019-08-10
  • 打赏
  • 举报
回复
if (a[j] > a[j+i]) --> if (a[j] > a[j+1])

69,336

社区成员

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

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