20分C語言簡單問題

2022-05-02 04:50:15 字數 1492 閱讀 7741

1樓:匿名使用者

最準確演算法思路:

任意輸入50個數,想到一維陣列,定義乙個int a[50].

關於排列問題,應該想到先找出最小的數,把它放在第一位,再找出第二小的數,把它放在第二位,以此類推,找最小數是先用第乙個數與其後所有數比較,若第乙個數大於其後的數,則交換數值,再用交換後的數值繼續比較。可以這樣找最小數:

for(i=0;i<49;i++) /*注意此處為i<49*/for(j=i+1;j<50;j++) /*注意此處為i<50*/if(a[i]>a[j]) /*比較大小*/完整**;(可以自己琢磨,多琢磨幾遍就會了)#include

main()

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

2樓:

首先將這些數放到乙個陣列裡,然後用冒泡法進行排序

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

for(j=i+1,j<50;j++)

3樓:

兩種演算法, 絕不是copy的, 現場編的 呵呵好久沒用了,a: min(mmin[50])返回?????; }

做兩個迴圈, 指定乙個變數n 初始值為第乙個數,如果哪個數比n小 那麼記下此位置,和這個數 繼續比較, 完成一次迴圈 把最小的數填到第 i 位置。 繼續 i+1 的迴圈。

直到 倒數第二個和最後乙個比。

b :

把數和 i和 i+1 比, 如果 i+1

4樓:匿名使用者

演算法名字為:起泡法

起泡法的思路是:將相鄰2個數比較,將小的調到前頭。若有6個數(8,9,5,4,2,0),第一次比較第一和第二個數(8和9)的大少,如果第乙個數大於第二個數,就把兩個數字置交換,第2次比較第二和第三個數(9和5)的大少,如果第二個數大於第三個數,就把兩個數字置交換。。。。。。。。

,如此共進行5次得到8,5,4,2,0,9的順序!!!

按照上面的演算法原理,再編你這個程式

#include

main()

printf("結果為:\n");

for(i=0;j<50;j++)printf("%d",a[i]);

printf("/n");}

5樓:匿名使用者

這個根本就扯不上演算法的問題。。。只能乙個個比。。。

會用陣列就行。。。

6樓:匿名使用者

把數字放在陣列裡面,然後隨便用一種排序方法排列就ok了!

7樓:許澤志

c語言排列數字就用數字選擇排序呀,

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

for(j=i+1,j<50;j++)

8樓:匿名使用者

輸入的50個數以一維陣列儲存,然後用冒泡法比較排序,接下來應該知道怎麼做了吧-

簡單c語言問題,求教,簡單C語言問題,求教

include include int cmp const double a,const double b void k const double open,const double close void shadow const double open,const double close,con...

簡單的C語言問題,2個簡單的C語言問題

include void main outa 100 i for i 0 i 9 i outa i 1 a i for i 0 i 10 i a i outa i for i 0 i 10 i printf d a i 第二個 include void main b i 0 c i 5 0 for ...

簡單C語言問題

從錯誤提示來看,是型別不相容。這個在c裡面是合法的,算warning,但在c 中是錯誤。用gcc可以編譯過去 root cc o 2 wall 2.c 2.c 6 警告 main 的返回型別不是 int 2.c 在函式 sort 中 2.c 23 警告 傳遞 strcmp 的第 1 個引數時將整數賦...