Skip to content

FreeBASIC 入门教程 #1


本教程面向初学者,适合那些刚开始学习编程并使用 FreeBASIC 进行实践的人。

学习语言

学习编程语言意味着学习编写它所用的词语,并了解这些词语的含义。我们不需要一次学完所有内容。但学习几个重要的关键字将帮助我们入门。这里我们只集中学习以下关键字:

  • Dim
  • Print
  • Input
  • For...Next
  • If...Then
  • Do...Loop

Hello World!

没有这个示例的初学者参考是不完整的。

start GeSHi

vb
Print "Hello World!"

end GeSHi

双引号之间的文本是字面字符串。Print 语句用于向显示器输出文本。如果您能编辑、编译和执行此示例,那么您已经踏上了正确的道路。

注意:程序在执行最后一行代码后立即终止。用户可以添加 Sleep 语句来暂停,直到按任意键才结束(参见最后一个示例的用法)。

使用变量存储数据

在程序中,有时我们会希望将一些信息存储在内存中某处,以便稍后使用。要在内存中存储内容,我们使用变量。FreeBASIC 中的所有变量都具有特定类型,例如数字或字符串。我们使用 Dim 语句声明变量名并指定我们想在其中存储什么类型的信息。

start GeSHi

vb
Dim text As String
text = "Hello World!"
Print text

end GeSHi

我们使用 Dim 告诉编译器我们想在程序中使用名为 text 的变量,并且我们将在其中放入 String 数据。然后我们将 "Hello World!" 赋值(复制)给该变量。最后,我们使用 Print 将其输出到显示器。

在表达式中使用变量

表达式 是描述可以被求值的源代码部分的通用术语。表达式被求值后,我们可以对其进行某些操作,例如将其赋值(复制)给变量。

start GeSHi

vb
Dim As String a, b, text
a = "Hello"
b = "World"
text = a + " " + b + "!"
Print text

end GeSHi

我们给变量 ab 赋值了一些数据。然后我们在表达式中使用变量 ab,该表达式随后被赋值给 text。最后,我们将结果输出到显示器。

从用户获取输入

通常,我们不知道程序需要什么数据,除非用户告诉我们。我们无法将其写入源代码,因为直到用户运行程序并告诉我们之前,我们不会知道它是什么。

start GeSHi

vb
Dim answer As String
Input "Type something and press enter:", answer
Print "You typed: '"; answer; "'"

end GeSHi

这里 Input 语句首先向显示器输出一些信息,然后等待用户向程序提供数据。在此示例中,我们只是将用户输入的内容原样输出到显示器。

进行一些数学运算

变量和表达式不仅限于字符串。大多数早期语言无法很好地处理字符串(如果能处理的话)。编写数学表达式类似于用铅笔和纸书写它们的方式。

start GeSHi

vb
Dim As Integer a, b, c

a = 5
b = 7
c = a + b

Print "a = "; a
Print "b = "; b
Print "a + b = "; c

end GeSHi

我们给变量 abc 赋值。我们使用 Integer 作为变量的数据类型。整数可以是正数或负数,但不能有小数部分。

用输入进行数学运算

这与前一个示例类似,不同之处在于我们让用户选择要相加的数字。

start GeSHi

vb
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 "; r

end GeSHi

Dim 让编译器知道我们想使用哪些变量名,以及它们将保存 Integer 数据。我们使用 Input 从用户获取数字,并使用 Print 显示结果。

用输入进行更多数学运算

数值变量不仅限于整数。我们还可以使用 SingleDouble 精度数据类型,它们可以表示小数。在此示例中,我们将从用户获取一些输入,将磅重量转换为公斤。

start GeSHi

vb
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

vb
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 "; total

end GeSHi

做出决策

程序可以使用条件语句(如 If...Then)选择执行哪些语句。我们可以使用变量的值或表达式的结果来决定是否应该执行一条或多条语句。

start GeSHi

vb
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 If

end GeSHi

从用户获取数字后,我们根据哪个条件匹配语句输出一个词(正数、负数或零)。

再次重复执行语句

这里我们将使用另一个循环结构 Do...Loop 来重复一些语句。程序如何知道何时停止重复这些语句?我们将使用 If...Then 来决定何时退出循环。

start GeSHi

vb
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. ";

Sleep

end GeSHi

参见

  • Dim
  • Print
  • ?
  • Input
  • For...Next
  • If...Then
  • Do...Loop

返回 目录

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系