C語言關於陣列題目,大佬幫幫萌新吧

2021-05-04 18:26:51 字數 1813 閱讀 6745

1樓:匿名使用者

#include

#include

int cmp(const void *a, const void *b)

int main(void)

putchar('\n');

a[n] = t;

qsort(a, n + 1, sizeof(int), cmp);

for(int i = 0; i < n + 1; i++)putchar('\n');

return 0;}

2樓:冬一又二分之一

#include

void sort(int num,int n)}temp = num[i];

num[i] = num[min];

num[min] = temp;}}

int main()

scanf("%d",&t);

sort(num,n);

for(i=0;i

printf("%d\n",num[n-1]);

num[n] = t;

sort(num,n+1);

for(i=0;i

printf("%d\n",num[n]);

return 0;}

菜鳥自學組合語言,懇請大佬幫幫忙

3樓:匿名使用者

你看**得在腦子裡想像資料處理的過程。

首先讀入輸入成績的字串到變數string+2開始的地址中。

比如,輸入12,34

string變數的內容就變成:

40,  -- 初值,最大輸入長度

05,  -- 實際輸入字元長度

31,  -- 1

32,  -- 2

44,  -- ','

33,  -- 3

34,  -- 4

35,  -- 13

然後再看你不解的**:

lea di, cj

lea si, string+2, 此時(si)的內容即上面輸入的31(第7行)

mov bh, 0

mov al, 0

again:

mov bl, [si]  ; 第1次執行,bl=31

cmp bl, ','   ; 判斷是不是','分隔符

jz next

cmp bl, 0dh   ; 判斷是不是回車

jz next

sub bl, 30h   ; 31->1, 把輸入的'1',由ascii碼值轉換為實際的數值1

mov cl, 10

mul cl        ; 第一次執行時,al=0,所以,(al) x(cl), ax=00

add al, bl    ; (al) = (al)*10 + (bl)

inc si        ; si->下一個字元,第一次執行後,指向2

jmp again     ; 下一次迴圈

如此看,就清楚了吧。

就是迴圈計算:

0 x 10 + 1 = 1

1 x 10 + 2 = 12

0 x 10 + 3 = 3

3 x 10 + 4 = 34

組合語言與高階語言不同,高階語言,一個計算用一個表示式就可以實現。

而組合語言,要把表示式中的每一步都折分成單獨的計算步驟。

2者的邏輯思維方式是有不同的。

4樓:我們騎螞蟻兜風

we are responsible 是主系表結構,中的 for our life 不屬於狀語範疇,而是表語補足語,或稱形容詞補足語。

C語言字串,求大佬,C語言字串陣列的問題

在語句for j 0 s j 0 j 中,j 記錄的是串s的字元個數,結束該迴圈時,s j 恰好是 0 在接下來的for迴圈中,第一個j 後,s j 是串s的最後一個字元,而i為0,迴圈體將s 0 與s j 進行交換,第二個j 是正常遞減,以便與i 相對應,交換s i 和s j 沒那個程式之類執行不...

c語言程式設計題,剛入門的萌新,求大神幫幫忙

var projection d3.geo.mercator scale 500 translate width 2,height 2 以及這樣的path generator var path d3.geo.path projection projection 求c 大佬幫忙寫下注釋,萌新求助 10...

C語言程式設計題,大佬幫幫忙,謝謝,C語言程式設計題求大佬幫忙解決一下謝謝了

給你思路 bai,用迴圈巢狀,控制其du中一類人的 數zhi量變化,例如男人則dao用遞減回 或者加來算 磚數 男人數答 3 磚數 男人數 3 女人數 2 磚數 男人數 3 女人數 2 小孩數 2 0時輸出格類人數3個迴圈巢狀 至於喜歡的條件如果是遞加就是小於等於最大值反之大於等於0。按照你的要求編...