QB程序设计入门-基本概念

来自:http://basicfan.yeah.net/ 作者:赵洋 youngbug@yeah.net
  QB的开发环境了解了QB程序设计的一些基本概念。

1.字符集

QB中可以直接使用的字符有26个英文字母大写小写都可以、0-9十个数字、算术运算符号+,-,*,/,^,\(前面符号依次表示加、减、乘、除、乘方、整除)、关系运算符号:<,>,=,<=,>=,<>(依次表示小于,大于,小于等于,大于等于和不等于)、特殊符号:.,;:?!'"$%#&_()[]、汉字。在QB中不能使用上面所说字符以外的其他字符。

2.数据类型

QB中有字符串、整数、单精度浮点数、双精度浮点数四种。

字符串:是一个不超过32767个字符的序列,一个汉字是两个字符;字符串需要用引号引住

整数:-32767到32767之间的整数

单精度浮点数:可以精确到小数点后7位

双精度浮点数:可以精确掉小数点后15位

注意:123,"123"的意义不一样,123是整数,表示数值,而"123"表示字符串。

3.常量与变量

程序执行全过程中不变的量是常量,比如圆周率的值PI=3.1415926,这个值比较复杂,每次使用时都输入比较麻烦,可以在程序开头定义一个常量PI=3.1415926以后每次使用圆周率时用PI就可以了。

常量分为数值常量和字符串常量两种:数值常量的值有整数、单精度浮点数和双精度浮点数三种,例如A=-100。字符串常量就指用双引号括起来的字符串,双引号不是常量的内容引号内的字符串才是,例如Name="Bill Gates",表示常量Name的值是Bill Gates

变量是程序在执行过程中值可以改变的量。变量也分数值变量和字符串变量两种。

变量的名字我们叫它变量名。变量名是一个以字母开头的符号序列,长度不能超过40个字符,可以有字符、数字和小数点,变量名的最后一个符号可以是变量类型说明符号(%整型,!单精度,#双精度,$字符串)但不能出现QB中的关键字。

[例子]在QB中输入以下程序

PI = 3.1415926#
R = 5
S = PI * R * R
PRINT S
END

按F5键运行后,计算机显示结果:

78.53981

A%表示整型变量名,B!表示单精度变量名,NAME$表示字符串。

变量的说明:为什么要说明变量的类型呢?因为如果一个变量在程序中从头到尾的取值只是100以内的整数,我们就没有必要把它定义成一个单精度变量,因为整型变量在内存中只占2个字节,而单精度变量占4个字节,这样就节省系统的资源,提高了程序运行的速度。而如果我们需要的一个变量取值是小数点后2位,我们也没有必要把它定义成双精度变量,定义成单精度变量就可以了,双精度变量占8个字节的内存,当然如果我们把这个变量定义成整型变量,有达不到所需要的精度了。

我们在程序中对后面使用的变量做个说明,说明有两中方法。一种就是在变量后加%,!,$符号标明变量的类型。第二种用说明语句。

DEFINT整型,DEFSNG单精度,DEFDBL双精度,DEFSTR字符串。

以DEFINT为例子:

DEFINT A

表示以A开头的变量为整型变量,同样DEFSTR BCD表示以BCD开头的变量为字符串。

注意:符号说明优先于语句的说明,比如程序中有DEFINT A,而在后面的程序中出现了AB$,则AB$表示字符串。

[例子]在QB中输入以下程序:

CLS
DEFINT A '定义A开头的变量是整型
DEFSNG B-C '定义以B,C开头的变量是单精度
DEFSTR D '定义以D开头的变量是字符串
A = 1.001 '给变量A赋值1
.001
AB = 2.002 '给
AB赋值2.002
B = 1.001
C = 1.001
D = "1.001"
A$ = "1.0000001"
PRINT A '打印A的值
PRINT AB
PRINT B
PRINT C
PRINT D
PRINT A$
END

F5运行程序,最后屏幕上输出的结果是:

1
2
1.001
1.001
1.001
1.0000001

同样给A和B赋值1.001但因为A是整型,所以输出的A为1,而输出的B为1.001
 

(4)表达式和运算符

算术运算符:

符号 意义 举例 结果
+ 2+3 5
- 4-19 -15
* 3*22 66
/ 100/5 20
^ 成方(底数^指数) 5^2 25
\ 整除(结果四舍五入为整数) 333.1415926/10 33
MOD 求余数 14 MOD 3 2

[例子]在QB中输入以下程序:

PRINT 14 MOD 3
PRINT 34 + 6
PRINT 100 / 2
PRINT 35 - 3
PRINT 13 * 7
PRINT 333.4 \ 10
END

按F5键运行后,计算机显示

2
40
50
32
91
33


关系运算符:

关系运算又叫比较运算,用来比较两个值的大小.比较结果如果关系成立,即真,QB返回值-1,如果不成立,即假,QB返回值0。

符号 意义 举例 结果
= 等于 1=2 0
<> 不等于 A<>B  
< 小于 A<B  
> 大于 2>1 -1
<= 小于等于 A<=B  
>= 大于等于 A>=B  

[例子]在QB中输入以下程序:

PRINT 1 = 2
PRINT 1 = 1
PRINT 2 > 1
PRINT 2 < 1
PRINT 3 >= 1
PRINT 3 <= 1
END

按F5键运行后,计算机显示:

 0
-1
-1
0
-1
0
逻辑运算符

逻辑运算又叫布尔运算,对多重关系进行测试,返回真(-1)或假(0)值。

运算名称 符号 举例 法则
AND X AND Y XY同时真,结果才是真
OR X OR Y X,Y有一个为真,结果就是真
NOT NOT X X为真,NOT X结果为假
异或 XOR X XOR Y XY相同(同为真或者同为假时)为假,否则为真
等价 EQV X EQV Y XY相同,为真,否则为假。(与异或相反)
隐含 IMP X IMP Y  

字符串运算符

QB中字符串运算符只有一个+(VB中还可以用&

[例子]在QB中输入以下程序:

A$ = "Bill" : B$ = " " : C$ = "Gates"

PRINT A$ + B$ + C$

按F5运行计算机输出结果:

Bill Gates

 

函数

QB中的函数和数学中函数差不多,形式也是Y=F(X)。函数有且只有一个返回值,X为传送给函数的自变量,Y是函数的返回值,也就是函数值。

算术函数

函数 功能
ABS(X) 求X绝对值
SIN(X) 求X的正弦值
COS(X) 求X的余弦值
TAN(X) 求X的正切值
ATAN(X) 求X的反正切值
LOG(X) 求X的自然对数
EXP(X) 求以e为底的指数函数值
SGN(X) 求X的符号,如果X>0返回1,X<0返回-1,X=0返回0

注意三角函数的自变量是以弧度为单位。

还有一些类型转换函数,和字符串操作函数,以后用到时候再介绍。