-
quick basic
鎖定
- 中文名
- Quick Basic
- 外文名
- Beginner's All-purpose Symbolic Instruction Code
- 性 質
- BASIC變種
- 單 位
- 美國微軟公司
quick basic現狀和特點
微軟在較新版本的Windows中不再集成QBASIC。不過Windows 98的用户可以在光盤\\TOOLS\\OLDMSDOS目錄中找到它,在Windows 95的光盤中,它存放在\\OTHER\\OLDMSDOS目錄中。微軟網站對它的技術支持只對MS-DOS的授權用户有效。
quick basic改進
擴充了變量和常量的類型
變量名長度:40個字符
子程序和函數作為單獨的模塊
不需要行號
注:Quick BASIC簡稱QB,是一種編譯型的語言;qbasic是一種解釋型的語言,和Quick BASIC擁有一樣的語法。同時,為了省時間,QBASIC中的PRINT 語句可以直接用?來代替。
quick basic常見語法
條件語句
行if語句: IF 條件 THEN 語句組 ELSE 語句組2
塊if語句
IF 條件 THEN
語句組
ELSE
語句組2
END IF
IF 語句還可如此運用
IF 條件 THEN
語句組
ELSEIF 條件 THEN
語句組2
END IF
多分支語句SELECT用法:
SELECT CASE 變量或字符串
CASE 情況1
語句組
CASE 情況2
語句組2
END SELECT
循環結構語句
1.計數循環
語句體
next 控制變量
2.當型循環
其格式有兩種:
(1)
WHILE 條件
WEND
(2)
DO WHILE 條件
循環體
LOOP
3.直到型循環
DO
循環體
LOOP UNTIL 條件
基本語句
CLS:即Clean the screen,清屏幕
輸入語句:input“顯示的內容”,變量名錶
或者“,”改為“;”,改完之後輸入時會多出一個“?”
輸出語句:print “顯示的內容”,變量名錶1,“顯示的內容”,變量名錶2……
把,改為;時,兩個內容間空1格,否則空14格左右,最後不加分號為換行。
一維數組的定義:dim 變量名(下標)
二維數組的定義:dim 變量名(下標1,下標2)
代碼示例(賦值,求和運算,並顯示結果)
A=10
B=20
C=A+B
Print C
END
變量
變量長度小於等於40,不允許出現關鍵詞,如Let
數:如15%、-32768、215654#、2.0158e+15、8.545646d+20、-18.75等,變量名為例如a的變量名
字符串:如“15%”、“abc”等,變量名為例如a$的變量名
補充:在QB中還可以幾何畫圖,具體用法如下(詳見QB內部幫助)
SCREEN 12'639*479 16色圖形模式
CIRCLE(100,150),10,4'在x座標100與y座標150處畫一個半徑為10的顏色為4(紅色)的圓。
SYSTEM
簡單的雙重循環在冒泡排序程序的運用
CLS
DIM n AS INTEGER
INPUT n
DIM a(n)
FOR i = 1 TO n
INPUT a(i)
NEXT i
FOR i = 1 TO n
FOR j=1 TO i-1
IF a(j) > a(j+1) THEN SWAP a(j), a(j+1)
NEXT j
NEXT i
FOR i = 1 TO n
PRINT a(i)
NEXT i
END
幾種常見的運算語句及函數
加運算:
AB之和=A+B
差運算:
AB之差=A-B
乘運算:
AB之積=A*B
除運算
AB商=A/B
乘方運算
A的B次方=A^B
開方運算
A開方=SQR(A)
交換變量
SWAP 值A,值B
初學者的練習題
1、輸入20個數,求出它們的最大值、最小值和平均值。
2、在1——500中,找出能同時滿足用3除餘2,用5除餘3,用7除餘2的所有整數;
3、如果一個數從左邊讀和右邊讀都是同一個數,就稱為迴文數,例如686就是一個迴文數?喑糖?000以內所有的迴文數。
4、已知數列1、5、12、22、35、...?求出第20個數
5、輸入一個大於1的整數,打印出它的素數分解式。如輸入75,則打印:"75=3*5*5"。
6、輸入10個正整數,計算它們的和,平方和;
7、輸入20個整數,統計其中正、負和零的個數;
8、輸出1——999中能被3整除,且至少有一位數字是5的數;
9、有一個六位數,其個位數字7,現將個位數字移至首位(十萬位),而其餘各位數字順序不變,得到一個新的六位數,假如新數為舊數的4倍,求原來的六位數。
10、有這樣的一個六位數字labcde,將其乘以3後變成abcdel,編程求這個數。
11、試找出6個小於160而成等差數列的素數。
1-1/3+1/5-1/7+……直到某一項的絕對值小於10的-6次方
附加:
我們用一個正整數列來表示一段地方的高度,當一段地方的高度為一個逐一上升的序列時,
我們稱它為一個階梯,例如 4、5、6、7、8 是一個長度為 5 的階梯。給定一個正整數列,
請找出它第一個最長的階梯,並將其輸出。如果一個階梯也沒有,輸出“No”。
運行結果示例:
請輸入數列的長度:8
請輸入數列:2 3 2 3 4 4 5 6
結果為 2 3 4
quick basic快捷鍵
Ctrl+C+Break:中斷正在運行的程序;
F5:運行程序;
Shift+F5:從第一條語句開始重新運行程序;
F4:當程序中斷運行時,查看運行結果屏幕,再按一次F4則切換回代碼屏幕;
F1:獲得幫助。
F8:單步運行
F9:斷點(同QB stop 語句,按F5繼續運行)
quick basic範例
【1】菜場上一公斤香菇是7.5元,編一個程序,從鍵盤上輸入重量,計算機自動算出其總價
INPUT X
zj=7.5*X
PRINT zj
END
【2】高精度乘法程序
CLS
INPUT a$
INPUT b$
la = LEN(a$)
lb = LEN(b$)
lc = la + lb
DIM a(la), b(lb), c(lc)
FOR i = 1 TO la
a(i) = VAL(MID$(a$, la + 1 - i, 1))
NEXT i
FOR i = 1 TO lb
b(i) = VAL(MID$(b$, lb + 1 - i, 1))
NEXT i
FOR i = 1 TO la
FOR j = 1 TO lb
x = a(i) * b(j): w = i + j - 1
c(w) = c(w) + x MOD 10
c(w + 1) = c(w + 1) + c(w) \ 10 + x \ 10
c(w) = c(w) MOD 10
NEXT j
NEXT i
DO WHILE c(lc) = 0
lc = lc - 1
LOOP
FOR i = lc TO 1 STEP -1
PRINT USING "#"; c(i);
NEXT i
END