0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

選擇排序算法C語言的實(shí)現(xiàn)

電子設(shè)計(jì) ? 來源:xx ? 2019-02-20 09:19 ? 次閱讀

選擇排序算法C語言的實(shí)現(xiàn).選擇法排序原理:一次選定數(shù)組中的每一個(gè)數(shù),記下當(dāng)前位置并假設(shè)它是從當(dāng)前位置開始后面數(shù)中的最小數(shù)min=i(將下標(biāo)給MIN,先不急著交換),從這個(gè)數(shù)的下一個(gè)數(shù)開始掃描直到最后一個(gè)數(shù),并記錄下最小數(shù)的位置min,掃描結(jié)束后如果min不等于i,說明假設(shè)錯(cuò)誤,則交換min與i位置上數(shù)。 具體實(shí)現(xiàn)代碼如下:

#include

/****************************************

**選擇排序法對(duì)十個(gè)整數(shù)進(jìn)行排序 ***

****************************************/

//n為數(shù)組長(zhǎng)度;

void sort(int a[],int n)

{

int temp,min;

for(int i=“0”;i {

min=“i”;//先假設(shè)最小下標(biāo)為i

for(int j=“i”+1;j if(a[j] min=“j”;//對(duì)i之后的數(shù)進(jìn)行掃描將最小的數(shù)賦予min

if(min!=i)

{

temp=“a”[i];

a[i]=a[min];

a[min]=temp;

}//判斷min與i是否相等,若=則說明原假設(shè)正確反之交換數(shù)值

}

}

//用main函數(shù)驗(yàn)證

void main()

{

int a[10];

printf(“please input the array a:\n”);

for(int i=“0”;i《10;i++)

scanf(“%d”,&a[i]);

sort(a,10);

for(i=0;i《10;i++)

printf(“%d\t”,a[i]);

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7594

    瀏覽量

    135863
  • 排序算法
    +關(guān)注

    關(guān)注

    0

    文章

    52

    瀏覽量

    10047
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    C語言實(shí)現(xiàn)常用排序算法是什么?

    C語言實(shí)現(xiàn)常用排序算法是什么?
    發(fā)表于 10-19 06:41

    C語言冒泡、插入法、選擇排序算法分析

    C語言冒泡、插入法、選擇排序算法分析
    發(fā)表于 09-06 15:51 ?44次下載

    基于C語言的幾種排序算法的分析

    排序是計(jì)算機(jī)程序設(shè)計(jì)中一項(xiàng)經(jīng)常發(fā)生的操作,排序算法的研究有其重要的理論及應(yīng)用意義。文中就幾種排序算法的思想,
    發(fā)表于 09-18 10:31 ?102次下載

    C語言教程之希爾排序

    C語言教程之希爾排序,很好的C語言資料,快來學(xué)習(xí)吧。
    發(fā)表于 04-22 11:06 ?0次下載

    C語言教程之冒泡排序

    C語言教程之冒泡排序,很好的C語言資料,快來學(xué)習(xí)吧。
    發(fā)表于 04-22 11:06 ?0次下載

    C語言教程之快速排序

    C語言教程之快速排序,很好的C語言資料,快來學(xué)習(xí)吧。
    發(fā)表于 04-22 11:06 ?0次下載

    C語言教程之選擇排序

    C語言教程之選擇排序,很好的C語言資料,快來學(xué)習(xí)吧。
    發(fā)表于 04-22 11:06 ?0次下載

    C語言教程之歸并排序

    C語言教程之歸并排序,很好的C語言資料,快來學(xué)習(xí)吧。
    發(fā)表于 04-22 11:06 ?0次下載

    C++語言實(shí)現(xiàn)火車排序功能

    C++語言實(shí)現(xiàn)火車排序功能
    發(fā)表于 01-05 11:27 ?2次下載

    C語言教程之幾種排序算法

    數(shù)據(jù)結(jié)構(gòu)的排序算法有很多種。 其中, 快速排序 、希爾排序、堆排序、直接選擇
    發(fā)表于 11-16 10:23 ?1742次閱讀

    c語言排序算法選擇排序

    應(yīng)廣大"鳥友"強(qiáng)烈要求,小編將會(huì)推出《排序系列》,給大家講講排序那些事。? ? ? ? ?那么今天首先給大家講解最符合人類思維邏輯的超簡(jiǎn)單排序法?《選擇
    發(fā)表于 11-16 10:25 ?3423次閱讀
    <b class='flag-5'>c</b><b class='flag-5'>語言</b><b class='flag-5'>排序</b><b class='flag-5'>算法</b>之<b class='flag-5'>選擇</b><b class='flag-5'>排序</b>法

    C語言實(shí)現(xiàn)簡(jiǎn)單的基數(shù)排序

    本文主要闡述的類容是C語言實(shí)現(xiàn)簡(jiǎn)單的基數(shù)排序?;鶖?shù)排序是一種分配排序,其基本思想是:排序過程無須
    發(fā)表于 02-05 14:57 ?1771次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言實(shí)現(xiàn)</b>簡(jiǎn)單的基數(shù)<b class='flag-5'>排序</b>

    C語言中的排序算法了解

    選擇排序(Selection sort)是一種簡(jiǎn)單直觀的排序算法。它的工作原理如下。首先在未排序序列中找到最?。ù螅┰兀娣诺?/div>
    的頭像 發(fā)表于 11-12 14:52 ?2626次閱讀

    C語言冒泡排序工程代碼匯總

    C語言冒泡排序工程代碼匯總
    發(fā)表于 08-30 11:06 ?3次下載

    php版冒泡排序是如何實(shí)現(xiàn)的?

    無論學(xué)習(xí)哪一種編程語言,進(jìn)行算法方面的訓(xùn)練時(shí)都繞不開“排序”。排序在進(jìn)階編程中有非常廣泛的應(yīng)用,要想成為編程高手,排序
    的頭像 發(fā)表于 01-20 10:39 ?881次閱讀
    php版冒泡<b class='flag-5'>排序</b>是如何<b class='flag-5'>實(shí)現(xiàn)</b>的?