有人知道c++排序为什么总有一个11无法排序

被时代遗忘的人 2023-05-28 14:53:06

我用c++的冒泡,插入和选择对一组随机数进行排序,总有一个11在排序前后位子不变

这是冒泡的代码:

#include<iostream>
#include<stdlib.h>
#include<ctime>
using namespace std;
void chooseSort (int a[],int n);
int main()
{
    int a[10];
    int i;
    srand(time(NULL));
    for (i=0;i<50;i++)
        a[i]=rand();
    cout<<"排序前:"<<endl;
    for (i=0;i<50;i++)
        {
        cout<<a[i]<<" ";
        if ((i+1)%10==0)
            cout<<endl;
         } 
     chooseSort (a,50);
     cout<<"排序后:"<<endl;
     for (i=0;i<50;i++)
        {
        cout<<a[i]<<" ";
        if ((i+1)%10==0)
            cout<<endl;
         } 
         return 0;
}
void chooseSort (int a[],int n)
{
    int i,j,t;
    for (i=0;i<n-1;i++)
    {
        j=i;
        for (t=i+1;t<n;t++)
        if (a[j]>a[t])
            j=t;
        swap(a[j],a[i]);
         
    }
}

这是结果:

求大神指点 

...全文
145 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
h2plus0 2023-05-28
  • 打赏
  • 举报
回复 1

swap()的代码在?

h2plus0 2023-05-28
  • 举报
回复 1
@h2plus0 原来swap是std里面定义的, 代码最主要的问题是: a数组需要改成: int a[50]; 否则会出现数组访问越界
  • 举报
回复
@h2plus0 谢谢🥹
本套餐详细讲解了程序创建技巧以及C++核心知识要点,共包含9门课程,内容涵盖C++基础、C++模板、C++网络编程、C++数据库、C++多线程、C++ STL、C++动态链接库、C++ Boost、C++ GDI+课程,课程中的每一个知识点老师都会进行具体讲解,并配有一定的实用案例。通过本课程的学习,学员可以掌握Windows高级C++开发工程师必学技能点,具备一定的使用C++解决问题的能力。 【现在学习c++,晚不晚?】 不晚!!! 第一,对于大学生来说,像国内的NOIP比赛,国际的ACM比赛,对大学生的求职,高中生的升学,所有很大的帮助。 许多高校在自主招生的过程中对有参加过比赛并获得过证书的学生都会有优先选择。大公司对有此经历的求职人员也会另眼相看。 第二,随着硬件的不断发展,存储器的容量不断扩增,要求我们编写更多复杂性更高的实时程序,而C++的优势就是可以用它来编写功能复杂,业务逻辑繁琐,实时性要求高的项目;之前看新闻知道Google的AlphaGo下围棋的水平已经是我们人类所达不到了。其背后也是用C++和神经网络编写的。 所以说,随着科技的不断进度,C++只会越来越受欢迎!!! 【学完课程,你将收获什么?】 课程中为黄强老师数十年软件开发总结的C++一站式编程知识点,为想真正进入企业开发的童鞋带来全方位的知识补充,学完本课程后,童鞋们将对C++企业级开发必备知识得到全面的完善,在面试与工作中能轻松达到企业要求! 【课程内容简介】 本系列课程为Windows平台 下C++高级开发工程师一站式课程, 学完后,童鞋们将达到企业中高级以上开发能力,以下课程均为入职软件公司C++方向的开发工作必须掌握的高级知识点,课程内容主要包括:

12,624

社区成员

发帖
与我相关
我的任务
社区描述
编程初学者社区,为大家提供一个文明交流,互相学习讨论技术,打造高质量编程初学者社区,欢迎各位的加入,让我们从初学者,冲进大厂!Yo can do all things! 社区交流群:716213426
数据结构学习java 个人社区
社区管理员
  • 程序猿教你打篮球
  • 保护小周ღ
  • 拼命阿紫
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

本社区面向各地编程爱好者,

我们目的为大家提供一个交流技术、分享知识,共同学习的平台。

人杰地灵当属此,万里求知满载归。

编程初学者社区交流群:716213426

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