
CODE: [Copy to clipboard]Note: 其实不论您调用的函数有没有参数都可以加上call,比如上面的程序还可以call FunctionTest,但是有参数传递的时候一定要加上callDim a,b
Function FunctionTest '定义一个名为FunctionTest的函数
Msgbox "This is a test!"
End Function
FunctionTest '直接写函数名的方式调用函数
Function AnotherFunctionTest(a,b) '再定义一个函数,并且接受两个参数
Msgbox a&b
End Function
Call AnotherFunctionTest("This is a","another test") '用call调用函数并且传递两个参数值
| Quote: | |
|
| Quote: | |
|
CODE: [Copy to clipboard]但我发现这句c=n*fun(n-1)在批处理中还是不容易实现。fun(int n)
if (n==1||n==0) c=1
else c=n*fun(n-1)
return c
CODE: [Copy to clipboard]大家帮改改。。。。@echo off||plp626@cn-dos.net&setlocal enabledelayedexpansion
call:x 5
echo %x%
pause
:x
if %1.==1. (set c=1) else (
set/a c=%1-1
call:x !c! x
exit/b
set %2=!c!
call set/a x=%1*!!x!!
)
exit/b&set %2=!c!
CODE: [Copy to clipboard][ Last edited by slore on 2008-9-6 at 01:25 PM ]@echo off&title 阶乘计算 By Slore
Set/p x=请输入一个整数:
Call :Sub_F %x% 1
pause
:Sub_F
if %1==1 echo %2&goto :End_F
set/a out=%1*%2,n=%1-1
Call :Sub_F %n% %out%
:End_F
| Quote: | |
|
| 欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) | Powered by Discuz! 2.5 |