久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1678|回復: 2
打印 上一主題 下一主題
收起左側

C語言選擇排序中交換數據的不同方式出現的不同結果 求分析

[復制鏈接]
跳轉到指定樓層
樓主
  1. //選擇排序,升序
  2. void main()
  3. {
  4.     int i,min,j,t;
  5.     int a[5]={5,3,4,21,2};
  6.     for(i=0;i<4;i++)
  7.     {
  8.         min=i;//默認此時的a[i]最小
  9.         for(j=i+1;j<5;j++)
  10.         {
  11.             if(a[min]>a[j])
  12.             {
  13.                 min=j;
  14.             }
  15.         }
  16.         if(min!=i)//找到了可以交換的數
  17.         {
  18.             min=a[i];//無t是5,21,2,3,4;有t是-85899346021234;用t來交換是234521
  19.             a[i]=a[min];
  20.             a[min]=min;
  21.         }
  22.     }
  23.     for(i=0;i<5;i++)
  24.     {
  25.         printf("%d,",a[i]);
  26.     }
  27. }
復制代碼

0.png (22.62 KB, 下載次數: 117)

0.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:722908 發表于 2020-4-5 16:28 | 只看該作者
想要交換的話要有一個中間量啊,不然a[min]=min的時候min已經是a[i]的指了,-858993460怎么出來的我也不清楚233
回復

使用道具 舉報

板凳
ID:272485 發表于 2020-4-5 17:15 | 只看該作者
這要看編譯器是如何在棧中組織臨時變量的,大部分編譯器會按照你定義的變量順序從棧底到棧頂安排存儲空間,所以按照你的定義順序,你的變量在棧中順序為:a[0],a[1],a[2],a[3],a[4],t,j,min,i,在t未刪除的情況下,初始值是0xCCCCCCCC,即十進制有符號數-858993460,你第一次搜索時,i=0,a[0]=5,min=a[i]=5,接下來a[i]=a[min]執行的是a[0]=a[5],a[5]不在數組中,正是t所在的位置,所以就出現1結果,刪除t后,溢出到j的位置,j此時的值是5,所以就出現2的結果,3是正確代碼得到的正確結果。
vs2017使用的編譯器不是按照你定義的順序組織變量,一般會先組織構造類型,再組織常規類型。  
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 99久久久国产精品 | 国产精品99久久久久久宅男 | 国产精品久久久久久久免费大片 | 亚洲精品美女视频 | 日韩欧美国产精品综合嫩v 一区中文字幕 | 久操伊人 | 嫩草视频入口 | 成人在线小视频 | 亚洲欧美在线视频 | 日韩在线视频一区二区三区 | 久久精品国产a三级三级三级 | 国产精品久久久久久 | 国产福利小视频 | 色婷婷在线视频 | 91精品国产综合久久久久久首页 | 国产美女福利在线观看 | 请别相信他免费喜剧电影在线观看 | 国产欧美一区二区久久性色99 | 黄色片在线 | 亚洲成网站 | 日本精品一区二区三区在线观看视频 | 在线视频h | 网址黄 | 国产一区二区三区精品久久久 | 久久久久久免费毛片精品 | 91天堂网 | 国产一区二区三区四区五区3d | 精品美女视频在线观看免费软件 | 激情网站在线 | 国产一区二区在线播放 | 成人国产精品久久久 | 欧美一区二区在线观看 | 精品国产成人 | 在线免费毛片 | www.夜夜骑 | 黄视频免费在线 | 久久久久国产精品一区二区 | 国产精品自拍视频 | 在线观看免费观看在线91 | av中文字幕在线播放 | 久久久久久亚洲精品 |