1樓:匿名使用者
其實吧,這個程式的核心思路也可以換種說法(就是給一個數由大到小排列),這一點你做出來了。(一起**一下,我們一步步順著來看看)
先來分析一下你那1100變成1001的問題(我用實際的過程讓你看一下程式執行過程吧):
接下來是剝位置統計個數j,這一點很好。
(注意當前陣列的位置)
然後實現了一次迴圈之後:
第二重迴圈m=1執行完了之後實現了第一次互換:
此時1001就沒再發生變化……
這就是1100變成1001的過程,然後我們再來看一下這個問題所在,並思考一下要怎麼改?
改了一下:
#include
int main()
/*for(i=0;i<=j-2;i++)}}for(i=0;i
2樓:岔路程式緣
你只要把
// for(m=1;m0;i++)for(i=0;ia[m-1])}}
for(i=0;i printf("\n"); }分析:你的程式本身沒什麼大問題,多了一個-1,使程式在比較的時候,漏掉了最後一個數字,所以產生錯誤的結果。 3樓:nice新縣高中 #include int main() for(i=1;i for(m=0;m if(a[m]
for(i=0;i printf("\n"); }因為你的氣泡排序有問題。 用c語言求幾個數中的最大數 4樓: //你的兩個程式都不對,對是巧合。 //int a[4];表示a有4個元素,即a[0],a[1],a[2],a[3]這四個,不包含a[4]的。 //程式邏輯也有問題。 //求最大值的正確程式如下,最小值的同理。 #include void main () printf("the max number is %d",m);} 用4,3和兩個0組成一個零都不讀的四位數,最大數與最小數的和是多少?最大是4300 最小是3400 4300 3400 7700 和是7700 只要0不在4和3的中間就好了,四千三百,三千四百,和為7700 用4個7和4個0組成的數中一個零也不讀的最大的數是多少隻讀一個零的最小 一個零也不讀的最大的... include int main int n,i,a,max scanf d n n scanf d n a if a 0 max a a小於 0是max a,所以max是正數 else max a a不小於0時max a,所以max是正數for i 1 i 0 max因為這四個賦值都是把正數賦值給... 媽,這個數字組成一個最大的那個數字是嗯什麼還最小的數字是應該是806008600。用068這個數字組成的,我覺得只讀一個零數吧。用6 0 8 3 這四個數字組成的四位數中,最小的四位數是 只讀一個零的最大四位數是 不讀 最小的是3068 下面8603 再下3680 18個 望採納謝謝 1,8,0,6...用4,3和兩個0組成零都不讀的四位數,最大數與最小數的和是多少
c語言求絕對值最大值c語言中絕對值大小的比較
用0608這數字組成的最大四位數是什麼最小四位數是什麼只讀零的數是什