FreeBASIC 入门教程 #1
- 来源: https://www.freebasic.net/wiki/wikka.php?wakka=ProPgPrimer1
- 最后更新: 2019-04-11
本教程面向初学者,适合那些刚开始学习编程并使用 FreeBASIC 进行实践的人。
学习语言
学习编程语言意味着学习编写它所用的词语,并了解这些词语的含义。我们不需要一次学完所有内容。但学习几个重要的关键字将帮助我们入门。这里我们只集中学习以下关键字:
DimPrintInputFor...NextIf...ThenDo...Loop
Hello World!
没有这个示例的初学者参考是不完整的。
start GeSHi
Print "Hello World!"end GeSHi
双引号之间的文本是字面字符串。Print 语句用于向显示器输出文本。如果您能编辑、编译和执行此示例,那么您已经踏上了正确的道路。
注意:程序在执行最后一行代码后立即终止。用户可以添加 Sleep 语句来暂停,直到按任意键才结束(参见最后一个示例的用法)。
使用变量存储数据
在程序中,有时我们会希望将一些信息存储在内存中某处,以便稍后使用。要在内存中存储内容,我们使用变量。FreeBASIC 中的所有变量都具有特定类型,例如数字或字符串。我们使用 Dim 语句声明变量名并指定我们想在其中存储什么类型的信息。
start GeSHi
Dim text As String
text = "Hello World!"
Print textend GeSHi
我们使用 Dim 告诉编译器我们想在程序中使用名为 text 的变量,并且我们将在其中放入 String 数据。然后我们将 "Hello World!" 赋值(复制)给该变量。最后,我们使用 Print 将其输出到显示器。
在表达式中使用变量
表达式 是描述可以被求值的源代码部分的通用术语。表达式被求值后,我们可以对其进行某些操作,例如将其赋值(复制)给变量。
start GeSHi
Dim As String a, b, text
a = "Hello"
b = "World"
text = a + " " + b + "!"
Print textend GeSHi
我们给变量 a 和 b 赋值了一些数据。然后我们在表达式中使用变量 a 和 b,该表达式随后被赋值给 text。最后,我们将结果输出到显示器。
从用户获取输入
通常,我们不知道程序需要什么数据,除非用户告诉我们。我们无法将其写入源代码,因为直到用户运行程序并告诉我们之前,我们不会知道它是什么。
start GeSHi
Dim answer As String
Input "Type something and press enter:", answer
Print "You typed: '"; answer; "'"end GeSHi
这里 Input 语句首先向显示器输出一些信息,然后等待用户向程序提供数据。在此示例中,我们只是将用户输入的内容原样输出到显示器。
进行一些数学运算
变量和表达式不仅限于字符串。大多数早期语言无法很好地处理字符串(如果能处理的话)。编写数学表达式类似于用铅笔和纸书写它们的方式。
start GeSHi
Dim As Integer a, b, c
a = 5
b = 7
c = a + b
Print "a = "; a
Print "b = "; b
Print "a + b = "; cend GeSHi
我们给变量 a、b 和 c 赋值。我们使用 Integer 作为变量的数据类型。整数可以是正数或负数,但不能有小数部分。
用输入进行数学运算
这与前一个示例类似,不同之处在于我们让用户选择要相加的数字。
start GeSHi
Dim As Integer a, b, r
Input "Enter a number:", a
Input "Enter another number:", b
r = a + b
Print "The sum of the numbers is "; rend GeSHi
Dim 让编译器知道我们想使用哪些变量名,以及它们将保存 Integer 数据。我们使用 Input 从用户获取数字,并使用 Print 显示结果。
用输入进行更多数学运算
数值变量不仅限于整数。我们还可以使用 Single 或 Double 精度数据类型,它们可以表示小数。在此示例中,我们将从用户获取一些输入,将磅重量转换为公斤。
start GeSHi
Dim As Single lb, kg
Input "Enter a weight in pounds:", lb
kg = lb * 0.454
Print lb; " lb. is equal to "; kg; " kg"end GeSHi
重复执行语句
使用 For...Next 语句,我们可以告诉程序重复执行某些操作固定次数。例如,假设我们想将 1 到 100 的所有数字相加。
start GeSHi
Dim total As Integer
Dim number As Integer
total = 0
For number = 1 To 100
total = total + number
Next
Print "The sum of number from 1 to 100 is "; totalend GeSHi
做出决策
程序可以使用条件语句(如 If...Then)选择执行哪些语句。我们可以使用变量的值或表达式的结果来决定是否应该执行一条或多条语句。
start GeSHi
Dim number As Integer
Input "Enter a number : ", number
Print "Your number is ";
If number < 0 Then
Print "negative"
ElseIf number > 0 Then
Print "positive"
Else
Print "zero"
End Ifend GeSHi
从用户获取数字后,我们根据哪个条件匹配语句输出一个词(正数、负数或零)。
再次重复执行语句
这里我们将使用另一个循环结构 Do...Loop 来重复一些语句。程序如何知道何时停止重复这些语句?我们将使用 If...Then 来决定何时退出循环。
start GeSHi
Dim As Single total, count, number ' multi variable declaration (same type)
Dim As String text
Print "This program will calculate the sum and average for a"
Print "list of numbers. Enter an empty value to see results."
Print
Do
Input "Enter a number: ", text ' get user input
If text = "" Then Exit Do ' if empty -> quit Do/Loop
count += 1 ' increment count by: 1
total += Val(text) ' add and assign new value
Loop
Print
Print "You entered: "; count; " number(s)"
Print "The sum is: "; total
If count > 0 Then Print "The average is: "; total / count
Print
Print "Any keypress ends program. ";
Sleepend GeSHi
参见
DimPrint?InputFor...NextIf...ThenDo...Loop
返回 目录