批处理if和goto的简单例子?

本人刚学批处理二日,学到IF和GOTO,但是不是很理解,有那位大哥可以写一个例子出来讲解一下,感激不尽

第1个回答  2013-08-21
批处理中if和for算是两个比较强大的命令,我空间有详细的说明.
这句简单给你说下if
IF是用来判断的,是实现分支的一个命令
@echo off
set /p a=输入一个数字:
if %a% gtr 10 (
echo 你输入的数字大于10
) else (
if %a% equ 10 (
echo 你输入的是10
) else (
echo 你输入的数字小于10
)
)
pause

而goto命令是要结合标签执行的

@echo off
:start
set /p a=请输入一个字符(Q退出):
if /i "%a%"=="q" goto end
echo 你输入的是%a%
goto start
:end
pause
第2个回答  2013-08-21
@echo offset /p str=请输入数字1或2:
if "%str%"=="1" goto :a
if "%str%"=="2" goto :b
goto :c:a
echo 你输入的是1
goto :end:b
echo 你输入的是2
goto :end:c
echo 你输入的不是1或2
goto :end:end
pause
exit
第3个回答  2013-08-21
if %a% == 2 goto a说的是变量a等于2的话就跳到a标签
第4个回答  2013-08-21
批处理中的if与c&vb中的用法都是一样的。都是表示条件判断。给你看一个我自己写的批处理的片段

echo

查看帮助请按 1

退出请按 0
echo

———————————————————————————
echo

开始请按 2

echo.
set source=:
set /p source=

请输入要进行操作的序号:
set "source=%sourcE:"=%"
:: 上面这句为判断%source%中是否存在引号,有则剔除。
if "%source%"==":" goto input_source
if "%source%"=="0" exit
if "%source%"=="1" goto help
if "%source%"=="2" goto test_task

:help
*****

:test_task
*****
代码功能部分我给省略了。。免得提示犯罪。。呵呵
上面的if&goto完成的是判断选择功能。。当我输入0批处理就跳转到exit退出
当我输入1批处理就跳转到标签为:help的代码部分。(标签的用法是和C里面是一至的)。
而其他的功能都可由次演化出来。。建议多看些批处理源码。就能很好的理解了本回答被网友采纳
相似回答