[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
@echo off
setlocal enabledelayedexpansion
for /l %%i in (1 1 100) do (
    set /a summ=!summ!+%%i
)
echo %summ%&pause>nul

TOP

@echo off
set summ=0
for /l %%i in (1 1 100) do (
        set /a summ+=%%i
)
echo %summ%&pause>nul

TOP

@echo off
:sc_start
set /a a+=1
set /a c+=%a%
if %a%==100 (goto end) else (goto sc_start)
:end
echo %c%&pause>nul

TOP

回复 153# 唯尘
  1. @echo off
  2. :sc_start
  3. set /a ThisNum+=1
  4. set /a Sum+=ThisNum
  5. if not %ThisNum%==100 (
  6.     goto :sc_start
  7. )
  8. :end
  9. echo %Sum%
  10. pause
复制代码
1、尽可能的使用有意义的变量名。
2、set /a 计算的时候,等号右边的变量可以不加百分号。
3、在这个特定场景下if命令的else可以省略。
4、除了非常特殊的情况,尽量不使用&把多个命令写在同一行。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 151# 唯尘
  1. @echo off
  2. for /l %%i in (1 1 100) do (
  3.     set /a Sum=Sum+%%i
  4. )
  5. echo %Sum%
  6. pause
复制代码
set /a放在for循环内部计算的时候,如果自定义变量需要出现在等号右边,可以不加百分号或感叹号,这样就不必显式的开启变量延迟扩展了。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

@echo off
for /l %%i in (1 1 100) do (
        call set /a a=a+%%i
)
echo %a%
pause>nul

TOP

回复 156# 唯尘


    call是多余的,在这个代码里面没有任何用处,可以去掉。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

@echo off
for /l %%i in (1 1 100) do (
        call set /a num+=%%i
)
echo %num%&pause>Nul
exit

TOP

返回列表