高中数学Basic语言参考

论坛搜索关键字:Basic VB 高中 数学 算法 程序 编程 
 
 这贴是高中数学中的Basic语言的参考,数学中的Basic是很简单的,它仅仅只能用来表达算法。如果你想用它写出可执行的程序,请学习ANSI Basic或VB的语法。 
 

『一:运算符』 
* 乘 
/ 除 
+ 加 
- 减 
MOD 求余数(相当于PHP和C的%符号) 
> 大于 
>= 大于或等于 
< 小于 
<= 小于或等于 
<> 不等于 
= 赋值/相等(在IF或其他条件执行的语句中是判断相等,否则是赋值) 
AND 逻辑与、且
OR 逻辑或、或者
NOT 逻辑非(否定)

 
『二:基本语法』 
1、一条语句占一行,在Basic中不可把多条语句写在同一行 
2、语句结尾不要加分号,请PHP和C程序员注意。在Basic中,分号用来分隔不同类型的参数 
例: 
INPUT "输入3个数:" ; a,b,c 
PRINT "你输入的是:" ; a,b,c 
d=a+b+c 
PRINT "a+b+c=" ; d 

 
『三、关键字』 
1.变量 
 变量名以字母开头,后接字母或数字,这与C相同。变量名不建议使用下划线。不要在变量名前面加美元符$(PHP程序员注意)
 变量有时是不区分大小写的,有时又区分大小写(混乱的情况),所以自己写时不要出现大小写混用;当出现大小写混乱时,也不要疑惑。
  
2.输入输出语句

PRINT 输出表达式的值
 PRINT支持多参数,用逗号分隔,如
PRINT 1,3,5,a,9,b
 也可以输出字符串
PRINT "你好"
 注意:不要输出奇怪的内容,否则可能被人工判断为语法错误
 如果要同时输出字符串和数字,那么必须用分号(;)分开它们:
PRINT "x,y,z=" ; x,y,z
不建议更复杂的写法(如PRINT "x=" ; x ; "y=" ; y ; "z=" ; z),可能被人工误判。

 如果你要输出
x= 5
y= 6
z= 7
 这样的效果,建设你用三条PRINT语句,而不是把它们写在一条语句里。
 用于分隔多个值的分号会产生一个空格,而逗号会直接被输出(所以字符串和数之间要加分号而不是逗号)。每条PRINT语句结尾都会自动加上一个换行(不建议使用任何转义字符,比如"\n"什么的)。以下语句:
PRINT 5,6,7
PRINT "x,y=" ; 8,9
 将得到以下输出
5,6,7
x,y= 8,9
 建议不要太在意输出排版,只要正确输出就行了


 特别说明:不建议把字符串赋给变量。
text="如此如此这般这般"
PRINT text
 虽然对我们来说太正常了,但是别人也许很难理解。所以大家可以认为变量永远都是实数型的,只能存放数值(整数和小数都可以,而且假定不会因为数值过大而溢出)。
 另外,变量的初始值是不确定的(不一定是0),所以在对变量进行大小比较或输出之前,请确保你曾经给它赋过值。


INPUT 从用户输入中取得所需的值。例:
INPUT x
 执行到此处后,程序等待用户输入(只支持数字,输入完后回车),并把数字赋给x。如果用户输入错误,也许将出现不可预料的情况(我们不必考虑这些)。
 不建议对用户输入是否正确做过多的判断,因为我们只是在描述算法,而不是真的写程序,所以就当用户的输入都是正确的,直接往下走就行了。

 如果要同时取得多个值,也是可以的:
PRINT x,y,z
 此时用户必须输入类似“3,5,9”这样的字符串才能使程序正常进行。但是我们依然不必关心错误处理。
 你也可以先显示一段提示语给用户,再要求用户输入:
INPUT "x=" ; x
INPUT "y,z=" ; y,z
 更复杂的语法(如INPUT "a=" ; a ; "b=" ; b)虽然可用,但为了保持“兼容性”而不建议使用。


与标准C的对照:
INPUT "请输入a,b,c的值:" ; a,b,c
PRINT "你好" ; a,b,c
 对应C语言中的
double a,b,c; //a,b,c不是整型而是双精度小数型
printf("请输入a,b,c的值:");
scanf("%f,%f,%f\n",&a,&b,&c);
printf("你好 %f,%f,%f\n",a,b,c);
//%f:用十进制小数格式输出实数



3、条件语句
IF …… THEN
 ……
ELSE
 ……
END IF
如果 …… 就执行
 …这里…
否则执行
 …这里…
如果结束
可以不要ELSE部分,直接这样:
IF a>5 THEN
 b=a/2
 a=0
END IF
如果IF或ELSE后紧跟的只有一条语句,可以不要折行,并且不要END IF:
IF a<5 THEN b=a*2
ELSE b=a/2
 提示:
(1) ELSE IF语句是可用的,但不要写成ELSEIF。同样的END IF也要有明确的空格。
(2) 不要漏写IF条件后面的THEN,不要漏写END IF,新手很容易出现该问题,特别是忘了THEN。
(3) 不同于C,Basic可以不给条件加括号(因为有了空格和THEN);也不使用大括号括起代码块(取而代之的是用THEN、ELSE、END IF做为代码块的分界线)。
 与C对照:
INPUT x
IF x>5 AND x<70 THEN
 PRINT "5<x<70"
ELSE IF x<=5 THEN
 PRINT "x<=5"
ELSE
 PRINT "x>=70"
END
 用C实现:
『好吧,补充一点,不要把END IF写成END了。我就不小心写错了。』
C源码(仅演示):
double x;
scanf("%f\n",&x);
if(x>5 && x<70)
{
 printf("5<x<70\n");
}
else if(x<=5)
{
 printf("x<=5");
}
else
{
 printf("x>=70");
}
『睡眠优先,zzzZZ』
回复列表(13|隐藏机器人聊天)
添加新回复
回复需要登录