local arr =
-- 定義陣列
local max = math.max(unpack(arr))
-- math.max取得引數中最大值;
-- unpack接收乙個陣列(table)引數,預設從下標1開始返回陣列所有元素
print(max)
function maxfunction(arr)
max1 = nul
for k ,v in pairs(arr) do
if(max1==nul) then
max1 = v
endif max1 < v then
max1=v
endend
return max1
endprint( maxfunction(arr))
function __mi(x,n)
local sum
if n == 1 then
sum=x
else
sum = __mi(x,n-1) * x
endreturn sum
endprint(__mi(2,5))
-- 方法1
function __jiecheng(x)
local i=1
if x < 1 then
return 1
endrepeat i = x * i
x = x - 1
until x == 0
return i
endprint(__jiecheng(4))
-- 方法2
function _jiecheng(n)
local sum
if n == 1 then
sum=1
else
sum =_jiecheng(n-1) * n
endreturn sum
endprint(_jiecheng(4))
a = 5
for i = 1, a, 1 do
for j = 1, a - i, 1 do
io.write(' ')
endfor k = 1, 2 * i - 1, 1 do
io.write(k)
endprint()
end
for a = 1,9 do
local s = ""
for b=1,9 do
if b <= a then
s = s..a.."x"..b.."="..a*b
if a ~= b then
s = s.."\t"
endend
endprint(s)
end
year = io.read()
if(year%4==0 and year%100~=0) then
print("閏年")
else
print("平年")
end
要求使用者輸入兩個整數,判斷第乙個整數是否是第二個整數的倍數。
num1 = io.read()
num2 = io.read()
if(num2%num1 == 0) then
print("ok")
else
print("no")
end
要求使用者輸入乙個年份和乙個月份,判斷(要求使用巢狀的if…else和switch分別判斷一次)該年該月有多少天。
print("請輸入年份")
year = io.read();
print("請輸入月份")
month = io.read();
if(year%4 == 0 and year%100 ~= 0) then
print(year.."是閏年:366天")
local month = tonumber(month)
if(month == 2) then
print(month.."月是28天")
endelse
print(year.."是平年:365天")
local month = tonumber(month)
if(month == 2) then
print(month.."月是29天")
endend
monthmax =
months =
for i,m in ipairs(monthmax)do
local lable = tonumber(month)
if m == lable then
print(lable.."月是31天")
endend
for i,m in ipairs(months)do
local lable = tonumber(month)
if m == lable then
print(lable.."月是30天")
endend
要求使用者輸入乙個學生的分數(1~100),使用switch結構判斷該分數屬於什麼等級(a、b、c、d、f)。
userscore = io.read()
numberscore = tonumber(userscore)
if (numberscore <= 20 and numberscore > 0) then
print("a")
endif (numberscore <= 40 and numberscore > 20) then
print("b")
endif (numberscore <= 60 and numberscore > 40) then
print("c")
endif (numberscore <= 80 and numberscore > 60) then
print("d")
endif (numberscore <= 100 and numberscore > 80) then
print("f")
endif (numberscore <= 0) then
print("會好好輸嗎?")
end
使用while迴圈求1~100以內所有奇數的和。
i = 1;
j = 1;
while(i < 99)
do local num = i + 2
i = num
j = j + i
endprint(j)
--]]
使用while迴圈求式子2+22+222+2222+22222的和。p=p*10+2;
i = 0
j = 0
while(i < 22222)
do i = i * 10 + 2
j = j + i
endprint(j)
請程式設計驗證一下「角谷猜想」:對任意的自然數,若是奇數,就對它乘以3加1;若是偶數就對它除以2;這樣得到乙個新數,再按上述奇數、偶數的計算規則進行計算,一直進行下去,最終將得到1。
userscore = io.read()
numberscore = tonumber(userscore)
while(numberscore ~= 1) do
if(numberscore % 2 == 1) then
numberscore = numberscore * 3 + 1
else
numberscore = numberscore / 2
endprint(numberscore)
end
MySQL中的單錶練習題
部門表 create table dept deptno int primary key,dname varchar 14 部門名稱 loc varchar 13 部門位址 insert into dept values 10,accounting new york insert into dept...
程式設計練習題 矩陣中的路徑
請設計乙個函式,用來判斷在乙個矩陣中是否存在一條包含某字串所有字元的路徑。路徑可以從矩陣中的任意乙個格仔開始,每一步可以在矩陣中向左,向右,向上,向下移動乙個格仔。如果一條路徑經過了矩陣中的某乙個格仔,則該路徑不能再進入該格仔。例如 ab cesf csad ee left begin a b c ...
有關鍊錶的練習題。
剛剛學了線性表,會了一些基本操作,現在來做一些經典面試題來鞏固一下知識。一。列印鍊錶從尾到頭。1 從尾到頭列印單鏈表。普通法 void print slistnode pfirst end pnode 將pnode賦給end。pnode pfirst 將pnode賦成頭結點列印出此時的值,繼續迴圈。...