vb中輸入數字,並按照有大到小排序氣泡排序

2021-05-24 17:59:36 字數 3468 閱讀 5567

1樓:洛秀花況儀

看上面那一大段,我暈了(╯﹏╰)b

下面的是從小到大排序的,從大到小隻需改一個「>」號,看下面的註釋,整個過程不變的。

private

sub***mand1_click()

dimx(1

to5)

asdouble,

i%,j%,

tx(1)

=val(text1)

x(2)

=val(text2)

x(3)

=val(text3)

x(4)

=val(text4)

x(5)

=val(text5)

fori=1

to5-1

'有5個數要排序,需要進行5-1=4次兩兩比較forj=5

toi+1

step

-1'從末尾一個元素到第i個元素進行兩兩比較ifx(j)

1)then

'從小到大排序,若需要從大到小排序,將「<」改為「>」

'若次序不對,則馬上交換位置t=

x(j)

x(j)

=x(j-1)

x(j-1)=

tend

ifnext

j'除了內迴圈,一輪排序結束,最小(或最大)數已經冒到陣列第一位next

ilabel1.caption

=x(1)

label2.caption

=x(2)

label3.caption

=x(3)

label4.caption

=x(4)

label5.caption

=x(5)

endsub

2樓:匿名使用者

private sub ***mand1_click()dim a(10) as integer

dim temp as integer

print "輸入的原始數字是:";

for i = 1 to 10

a(i) = inputbox("請輸入第" & i & "個數字")

print a(i) & " ";

next i

print

print "排序後的數字是:";

for i = 1 to 10

for j = 1 to 10 - i

if a(j) < a(j + 1) thentemp = a(j + 1)

a(j + 1) = a(j)

a(j) = temp

end if

next j

next i

for i = 1 to 10

print a(i) & " ";

next i

end sub

輸入10個數,用氣泡排序法按由小到大順序排序並輸出??c語言的

3樓:萬能導師

如下參考:

#包括< stdio, h >

intmain()

{inta[10]={0};

inti=0,j=0,t=0;

for (i = 0;我

< 10;我+ +)

for (i = 0;我< 10;我+ +){for (j = 0;j < 10 - i;j + +) {if (a > [j] a [j + 1)){t=a,[j]。

a[j]=a,a+1加到[j]。

a[m+1]=t;

}}}for (i = 0;我< 10;我+ +){printf("%d",a[i]);}

返回0;}

任意輸入10個資料,程式執行:

擴充套件資料:氣泡排序演算法的複雜原理如下:

1.比較相鄰metaelements。如果第一個比第二個大,就交換它們。

2.對每一對相鄰的元素執行相同的操作,從第一對開始,到最後一對結束。此時,最後一個元素應該是最大的數。

3.對除最後一個元素之外的所有元素重複上述步驟。

4.每次對越來越少的元素重複上述步驟,直到沒有一對數字可供比較。

4樓:路堯家的顧小言

氣泡排序的程式**

如下:#include

int main()

;int i=0,j=0,t=0;

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

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

}}for(i=0;i<10;i++)

return 0;}

任意輸入十個資料,程式執行結果:

5樓:匿名使用者

#include

void main()

;int i=0,j=0,c=0;

printf("請輸入10個數

:\n");

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

for(i=0;i<9;i++)}}

printf("該十個數從小到大排序為:\n");

for(i=0;i<10;i++)}

6樓:匿名使用者

1 輸入;

2 排序;

3 輸出。

參考**如下:

#include

int main()

}for(i = 0; i < 10; i ++)//輸出。

printf("%d,",&a[i]);

printf("\n");

return 0;}

7樓:匿名使用者

#include

#define n 10

void main()

if(!flag) break;

}printf("\n排序後陣列為:\n");

for(int j=0;j

printf("s[%d]=%d\n",j,s[j]);}

8樓:匿名使用者

#include

#include

/*對輸入的10個數,用冒泡排

序法按由小到大順序排序*/

void sort(int array[10])}}}void main()

9樓:匿名使用者

#include

#define maxn 10

int main()

for (i = 0; i < maxn; i++)printf(i == maxn - 1 ? "%d\n" : "%d ", arr[i]);

return 0;}

為什麼我做的這個氣泡排序(輸入10個數字,按由大到小的順序排列)有問題呢

10樓:匿名使用者

for(i=0;i<9;i++)

for(j=0;j<9-i;j++)

{if(a[j]

vb有幾種方法輸入陣列,vb中這兩種定義陣列方式有什麼區別

這跟vb無關,就看設計了。方法多的是 vb中這兩種定義陣列方式有什麼區別?簡單的說吧 就是dim 和 redim 的區別如果我 修改成這樣 你就好理解了 dim arr3 1 to 4 arr3 array 1,4,2,8,9,10 arr3固定陣列只能有4個元素 而array有6個引數 要返回6個...

VB演算法問題,堆數字中湊出指定數字

資料20 30個,這個高效與低效,執行時間應該差不了多少吧!我給個簡單的演算法 1,將這些資料讀入一個陣列a 2,對陣列內的資料進行升序排序 3,依次從陣列中取一個數與其他數進行求和 1 先算兩個數之和100的。從a 0 開始,當a i 50時,即可跳出迴圈,開始進行三個數之和是100的計算 2 當...

VB連續輸入10數字,顯示其中奇數的個數和偶數的個數

奇數的個數 和 偶數的個數,如下 dim a 10 as double,u as singledim i as integer,jg as integer,og as integer private sub command1 click form1.autoredraw trueif i 0 the...