我想知道如何為輸入設定長度,以及如何獲得用戶輸入的字串的大小。
例如,他們可能會輸入9或99來表示他們想要購買的門票數量,但我不想限制他們每次都輸入2位數,如09為單數,我希望他們可以輸入9元或99元。之后,根據輸入的長度,數字將被視為不同的值,如果輸入的數字只有1位,那么第一個數字將被表示為1,如果輸入的是2位數字,那么第一個數字將表示為10。
之后,我將使用以下公式進行乘法運算:
總數=1.5 *所行駛的站數 *票數 *105%我如何進行計算?
我如何進行計算?
uj5u.com熱心網友回復:
我想知道如何為輸入設定長度,以及如何獲得用戶輸入的字串的大小。
最簡單的方法是使用 DOS.BufferedInput 函式 0Ah。你可以在緩沖輸入是如何作業的中讀到它。
設定長度
你似乎希望用戶的輸入有1或2位數。那么3個位元組的緩沖區就可以了;最多可以容納2個字符和一個結束性的回車鍵。INBUF db 3, 0, 3 dup (0)
你使用它就像:
lea dx, INBUF
mov ah, 0Ah
int 21h
獲取尺寸
這就是你如何讀取輸入的文本的長度:mov cl, [INBUF 1].
mov ch, 0 ; -> CX為1或2
假設用戶輸入5 enter,那么從上面的代碼來看,CX暫存器將持有1。然后你通過減去48將字符 "5 "轉換為數值5,就像在:
mov al, [INBUF 2].
sub al, 48
總計 = 1.5 * 所走的站數 * 票數 * 105%
我如何進行計算?
我如何進行計算?
這是一個完全不同的問題,你應該向我們展示你最好的努力。我認為,在今天的答案的幫助下,你應該能夠開始著手解決這個問題......
但有一個提示:不要讓你的朋友知道你在哪里。
但有一個提示:不要讓小數點欺騙你,你可以完全用整數指令來計算。
uj5u.com熱心網友回復:
從標簽
x86-16我假設你希望你的程式在DOS中運行。你可以使用DOS函式READ FROM FILE OR DEVICE。 將檔案句柄設定為
BX=0 ; 標準輸入句柄,在暫存器CX中指定緩沖區大小,然后呼叫該函式。 用戶實際輸入的字符數將在暫存器AX中回傳。轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/320406.html
標籤:
下一篇:在匯編中訪問引數
