若該文為原創文章,未經允許不得轉載
原博主博客地址:https://blog.csdn.net/qq21497936
原博主博客導航:https://blog.csdn.net/qq21497936/article/details/102478062
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/106850097
各位讀者,知識無窮而人力有窮,要么改需求,要么找專業人士,要么自己研究
紅胖子來也!!!
Basic語言是很老的語言了,比VB(Visual Basic還老)。
BASIC(Beginners’ All-purpose Symbolic Instruction Code,又譯培基),意思就是“初學者通用符號指令代碼”,是一種設計給初學者使用的程序設計語言。
BASIC是一種直譯式的編程語言,在完成編寫后不須經由編譯及連結等手續即可執行,但如果需要單獨執行時仍然需要將其建立成執行檔。
BASIC是由達特茅斯學院院長、匈牙利人約翰·凱梅尼(John G. Kemeny)與數學系教師托馬斯·卡茨(Thomas E. Kurtz)共同研制出來的。1964年BASIC語言正式發布。第一個BASIC程序在1964年5月1日早上4時,由BASIC編譯程序進行編譯后成功運行。1975年,比爾·蓋茨把它移植到PC上。
安裝FreeBasic,主要用他來編譯,如下圖:
安裝完后,打開命令行:
跳轉到開發目錄即可,
安裝PowerBasic,主要用他的編輯器
打開編輯器:
CSDN下載地址:https://download.csdn.net/download/qq21497936/12538533
軟件打包下載地址:QQ群1047134658(點擊“文件”搜索“Basic”,群內與博文同步更新所有可開源的源碼模板)
編譯時報錯,如下圖:
主要是因為使用了未定義的變量,其實是語言規則不同,因為使用qb語言,所以需要加上參數“-lang qb”,即可,如下圖:
直接打開dos,跳轉到目錄,fbc命令會生成對應的exe直接運行即可。
PRINT "12345"
PRINT "Hello world"
PRINT "12345";"54321"
PRINT "Hello world"
PRINT "12345" "54321"
PRINT "Hello world"
PRINT語句中使用TAB語句就類似於使用TAB鍵。
TAB(1)和TAB(2)沒有起到作用
PRINT "123456789ANCDEF"
PRINT 1;TAB(1);2
PRINT 1;TAB(2);3
PRINT 1;TAB(3);4
PRINT 1;TAB(4);5
PRINT 1;TAB(5);6
PRINT TAB(3);"Y";TAB(9);"Z"
END
配合讀數語句使用,稱讀數據(READ/DATA)語句。
請參照“讀取READ語句”
READ是讀取data存儲的數據,並不是我們習慣所認為的從屏幕上輸入,同時變量要先定義才能使用。
(字符串必須是$符號結尾)
DATA "12aaa345","11bbb11"
PRINT "READ ONE, SHOULD BE 12aaa345"
READ S
PRINT S
PRINT "READ ONE, SHOULD BE 11bbb11"
READ S
PRINT S
END
DATA "12aaa345","11bbb11"
PRINT "READ ONE, SHOULD BE 12aaa345"
READ S$
PRINT S$
PRINT "READ ONE, SHOULD BE 11bbb11"
READ S$
PRINT S$
END
PRINT "READ ONE, SHOULD BE 12345"
READ S
PRINT S
PRINT "READ ONE, SHOULD BE 11111"
READ S
PRINT S
SLEEP
DATA "12345","1111"
END
DIM D1 AS INTEGER
DATA 20,10
PRINT "READ ONE, SHOULD BE 20"
READ D1
PRINT D1
PRINT "READ ONE, SHOULD BE 10"
READ D1
PRINT D1
SLEEP
END
DATA 10,100,1000
READ T1,T2:T3=T1+T2
PRINT T1
PRINT T2
PRINT T3
READ T3
PRINT T3
END
DATA "aaa"
READ A$
PRINT A$
END
(注意:字符串默認結尾為$,否則認為是整數)
LET A$="12345"
PRINT A$
LET A=10
PRINT A
PRINT A*10
END
(注意,經測試,變量定義為A$,有金錢符號結尾,才被認為是字符串,否則認為是數字,而且輸入錯誤,數字則默認為0)
PRINT "PLEASE INPUT A NUM:"
INPUT A
PRINT "YOU INPUT NUM:";A
END
PRINT "PLEASE INPUT A NUM:"
INPUT A$
PRINT "YOU INPUT NUM:";A$
END
DATA 1,2,3,4
READ A,B
PRINT A
PRINT B
RESTORE
READ A,B
PRINT A
PRINT B
END
(注意:之前的程序,每一行之前沒有數字標簽,使用GOTO加上去)
DATA 1,2,3,4
READ A,B
100
PRINT A
PRINT B
SLEEP
PRINT "GOTO AGAIN"
GOTO 100
END
DATA 1,2,10
READ A,B,C
100
PRINT A*B: A=A*B
IF A<C THEN GOTO 100
PRINT A;">";C
END
DATA 1,2,10
READ A,B,C
100
REM "123456"
PRINT A*B: A=A*B
IF A<C THEN GOTO 100
PRINT A;">";C
END
與循環說明語句合成循環(FOR~NEXT)語句。
請參照“循環說明(FOR)語句”
INPUT N
FOR I=0 TO N
A=A+I
PRINT "+";I;"=";A
NEXT I
PRINT A
END
stop是直接退出程序了。
PRINT "12345" "54321"
STOP
PRINT "Hello world"
DATA 1,2,3,4
READ A,B
100
PRINT A
PRINT B
SLEEP
PRINT "GOTO AGAIN"
GOSUB 100
END
配合轉子語句使用,調用子程序。
定義數組,定義的數組下標從1開始。
DIM A(6)
DATA 1,2,3,4,5,6
READ A(1),A(2),A(3),A(4),A(5),A(6)
PRINT "A(0),A(1),A(2),A(3),A(4),A(5),A(6)"
PRINT A(0),A(1),A(2),A(3),A(4),A(5),A(6)
PRINT "A(1),A(2),A(3),A(4),A(5),A(6)"
PRINT A(1),A(2),A(3),A(4),A(5),A(6)
PRINT "A(0);A(1);A(2);A(3);A(4);A(5);A(6)"
PRINT A(0);A(1);A(2);A(3);A(4);A(5);A(6)
PRINT "A(1);A(2);A(3);A(4);A(5);A(6)"
PRINT A(1);A(2);A(3);A(4);A(5);A(6)
END
結束程序。
DATA 10,20
READ A,B
PRINT A;"+";B;"=";A+B
DATA 10,20,30,40
DIM D$(4)
READ D$(1),D$(2),D$(3),D$(4)
PRINT D$(1),D$(2),D$(3),D$(4)
END
(注意:數組定義,數組下標序號從1開始,目前普遍從0開始)
DATA 6
DATA 0.01,0.01,0.01,0.02,0.02,0.2,0.03,0.03,0.03,0.04,0.04,0.04,0.05,0.05,0.05,6.1,6.2,6.3
READ M0
DIM T0(M0+1),D0(M0),J0(M0)
FOR M=1 TO M0
READ T0(M),D0(M),J0(M)
NEXT M
FOR M=1 TO M0
PRINT "M=";M;",";T0(M);",";D0(M);",";J0(M)
NEXT M
END