1樓:蘭婷集需
matlab一維陣列將資料從大到小排列使用矩陣排列,俗稱“起泡法”,方法思想如下:
第一、用兩個並列的for迴圈語句,在第二個for 語句中又巢狀了一個迴圈語句。第一個for語句用於輸入10個元素的初值。第二個for語句用於排序。
本程式的排序採用逐個比較的方法進行。
第二、在i次迴圈時,把第一個元素的下標i賦於p,而把該下標變數值a[i]賦於q。然後進入小迴圈,從a[i+1]起到最後一個元素止逐個與a[i]作比較,有比a[i]大者則將其下標送p,元素值送q。 一次迴圈結束後,p即為最大元素的下標,q則為該元素值。
第三若此時i≠p,說明p,q值均已不是進入小迴圈之前所賦之值,則交換a[i]和a[p]之值。 此時a[i]為已排序完畢的元素。輸出該值之後轉入下一次迴圈。
對i+1以後各個元素排序。
在c語言中對陣列排列也是可以的,**如下:
include
#include
main()
{int a[10],i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[10]);
for(i=0;i<9;i++)
{for(j=0;j<9-i;j++)
{if(a[j]
2樓:夜盡天明
sort(a,'descend')
matlab如何將一個一維陣列從大到小排列?
3樓:蘭婷集需
matlab一維陣列將資料從大到小排列使用矩陣排列,俗稱“起泡法”,方法思想如下:
第一、用兩個並列的for迴圈語句,在第二個for 語句中又巢狀了一個迴圈語句。第一個for語句用於輸入10個元素的初值。第二個for語句用於排序。
本程式的排序採用逐個比較的方法進行。
第二、在i次迴圈時,把第一個元素的下標i賦於p,而把該下標變數值a[i]賦於q。然後進入小迴圈,從a[i+1]起到最後一個元素止逐個與a[i]作比較,有比a[i]大者則將其下標送p,元素值送q。 一次迴圈結束後,p即為最大元素的下標,q則為該元素值。
第三若此時i≠p,說明p,q值均已不是進入小迴圈之前所賦之值,則交換a[i]和a[p]之值。 此時a[i]為已排序完畢的元素。輸出該值之後轉入下一次迴圈。
對i+1以後各個元素排序。
在c語言中對陣列排列也是可以的,**如下:
include
#include
main()
{int a[10],i,j,t;
for(i=0;i<10;i++)
scanf("%d",&a[10]);
for(i=0;i<9;i++)
{for(j=0;j<9-i;j++)
{if(a[j]
matlab中sort()是升序的意思,如果有一個一維陣列b,那麼sort(-b)是怎麼排序的??
4樓:匿名使用者
b取了符號之後再升序排序,那就是-b的升序排列。
matlab提取一維陣列中較大10個數
5樓:匿名使用者
你先用b=sort(a)把陣列排序,然後提取第10個當座標就是b(10), 大於b(10)的定然就是屬於版最大10個以內的權了。
你用find(a>b(10))就可以找到這些大於b(10)的座標。
然後你可以根據座標提取這些數
a(find(a>b(10)))
當然這個的前提是b(11)和b(10)不相等(陣列沒有兩個數是相同的),不然都一樣的話提取的就不是最大的10個數,而是9個數了。
用matlab怎樣寫出一維陣列(或向量)的全排列組合?
6樓:匿名使用者
我只說方法。
(1)用perms
(2)先用nchoosek寫出組合,再對其每種組合用perms進行全排列即可。
用matlab如何將陣列寫入到excel中
從excel檔案中讀資料 n,t,rawdata xlsread file,sheet,range sheet 和 range可以省略 file是excel檔案的地址,sheet是excel檔案中指定的工作表,range是工作表中要讀取資料的範圍 n是數字型資料,t是檔案型資料,rawdata是所有...
如何將char陣列轉換為CString
char szbuff 256 cstring str str.format s szbuff mfc中怎樣將一個字元陣列的內容轉換為cstring型?char name 100 中華人名共和國 這是有效的字元陣列初始化 strname ca2ct name 這樣就可以了char name 是窄字元...
如何將MATLAB執行結果寫入檔案
a 1,2,3,4,5,6,7,8,9 fp fopen d ztq.txt wt for i 1 9 fprintf fp,d a i endfclose fp 將陣列a匯入 到d盤中的版ztq.txt中。權 最初等的函式是fprintf 高階函式有csvwrite和dlmwrite 如何用mat...