初试Lua

我在cnblog的处女博客,开始正题吧。

1. 安装Lua

在Windows下安装Lua,我下载了LuaForWindows进行安装。在Google Code上有安装包。

按照提示安装,然后就可以开始写代码了。

2. 初试Lua

大部分来自百度贴吧http://tieba.baidu.com/p/2480449939。打开Lua编辑器——SciTE,输入

1 print(“Hello, World!\n”)

保存文件(必须手动添加后缀.lua),F5运行。下面的命令行窗口会显示Hello, World!

为了不闪退,添加一行

1 pause=io.read()

让用户输入一个数字保存到pause变量中。得到下面的结果。

3. Lua里的特殊字符

Notes: 

\a 铃声(警报声)

\b 回退

\f 换页

\n 换行

\r 按Enter键

\t 按Tab键

\v 垂直制表

\' 单引号

\" 双引号

\? 问号

\\ 反斜杠

\000 八进制

\xhhh 十六进制

 

多说无益,上代码吧。

4. Lua中的函数

打印11个*

 1 function print10stars()
 2     for n=0,10 do
 3         print("*")
 4     end
 5 end
 6 
 7 print10stars()
 8 print("2nd test\n")
 9 
10 pause = io.read()

 5. for循环

打印0到10的值

1 for a = 0,10 do
2     print(a)
3 end
4 
5 pause = io.read()

 

循环计算1到100的和

 1 function sumTo100()
 2     sum = 0
 3     for i=1,100 do
 4         sum = sum + i
 5     end
 6 
 7     print(sum)
 8 end
 9 
10 sumTo100()

 

6. if的实验

1 if a==b then
2     print("Yes")
3 else
4     print("No")
5 end

 

结果是yes

Notes: Lua的关系运算符:==,>=,<=,~=(不等于)

逻辑与(and)、逻辑或(or)的例子

 1 function show()
 2     a = io.read()
 3     b = io.read()
 4     if (a=='a' or a=='A') and (b=='z' or b =='Z') then
 5         print("yes")
 6     else
 7         print("no")
 8     end
 9 end
10 
11 show()

 

for循环中嵌套if的实验,计算1到50的和,结果为1275

 1 function show()
 2     sum = 0
 3     for i = 0,100 do
 4         if i > 50 then
 5             break
 6         end
 7         sum = sum + i
 8     end
 9     print(sum)
10 end
11 
12 show()

 

7. While循环

计算1到100的和,结果为5050

 1 function show()
 2     sum = 0
 3     i = 0
 4     times = 0
 5     while times <= 100 do
 6         sum = sum + i
 7         i = i + 1
 8         times = times + 1
 9     end
10     print(sum)
11 end
12 
13 show()

 8. Lua注释

单行注释:

1 -- The content need to be commented

 

多行注释:

1 --[[The content 
2 need to be commented. ]]--

 

9. 函数返回值

返回幂级数a^b

 1 function pow(x,y)
 2     return x^y
 3 end
 4 
 5 function main()
 6     a = io.read();b=io.read()
 7     print(pow(a,b))
 8 end
 9 
10 main()

 

Notes: Lua支持的运算符:+,-,*,/,^

10. 数组

index可以是数字

function show()
    a = {[1]=100, [2]=200, [3]=300}
    io.write(a[1],"\n")
end

show()

 

写成这样,猜猜结果是多少呢?

1 function show()
2     a = {[1]=100, [1]=200, [2]=300}
3     io.write(a[1],"\n")
4 end
5 
6 show()

 

结果是200。

index还可以是字符。。。

1 function show()
2     a = {["/"]="A", ["*"]="B", ["-"]="C"}
3     io.write(a["/"],"\n")
4 end
5 
6 show()

 

11. 多行字符串

 1 --Multilines string
 2 
 3 function show()
 4     str=[[
 5 #include <iostream>
 6 using namespace std;
 7 
 8 int main(){
 9     cout << "Hello, world!" << endl;
10 
11     return 0
12 }
13     ]]
14     print(str)
15 end
16 
17 show()
18 pause = io.read()

 

转载于:https://www.cnblogs.com/JunxuanBai/p/3959974.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值