[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
echo %n%|findstr "^[1-9][0-9]*$">nul

经典

TOP

@echo off
for /l %%a in (1,1,100) do set /a b+=%%a
echo %b%
pause

TOP

回复 2# 的帖子

应该设sum的初始值为0

set sum=0

TOP

原来是要排除0开头的.

[ 本帖最后由 随风 于 2008-1-7 12:34 编辑 ]
技术问题请到论坛发帖求助!

TOP

不明白为何要这样写?
echo %n%|findstr "^[0-9]*$">nul
这样不行么?


你这样写的话呢第一个字符就有可能是0

[ 本帖最后由 ieutk 于 2008-1-4 14:27 编辑 ]
不大可能的事也许今天实现,根本不可能的事也许明天会实现

TOP

原帖由 ieutk 于 2008-1-4 13:46 发表
说一下

set n=1这句在你的代码中没有起到作用,可以不加
区分数字跟其它字符可以用这个代码echo %n%|findstr "^[1-9][0-9]*$">nul

不明白为何要这样写?
echo %n%|findstr "^[0-9]*$">nul
这样不行么?
技术问题请到论坛发帖求助!

TOP

说一下

set n=1这句在你的代码中没有起到作用,可以不加
区分数字跟其它字符可以用这个代码
  1. echo %n%|findstr "^[1-9][0-9]*$">nul
复制代码
不大可能的事也许今天实现,根本不可能的事也许明天会实现

TOP

  1. @echo off
  2. set n=1
  3. set /p n=input a number!
  4. for /l %%i in (1,1,%n%) do (
  5.     set /a sum+=%%i
  6. )
  7. echo %sum%
  8. pause
复制代码
1

评分人数

TOP

返回列表