前面有人用findstr确保输入既是数字又符合逻辑,但没包含0,下面代码可以确保输入的数字是自然数,即可以求0到n的和。这似乎跑题了,但仍然用for语句,也算是符合题目吧。- @echo off
- :star
- set/p "b=请输入一个自然数:"
- echo %b%|findstr "^[1-9][0-9]*$ ^[0]$" >nul
- if %errorlevel%==0 (
- for /l %%i in (0,1,%b%) do set/a sum+=%%i
- call,echo %%sum%%
- ) else (cls&echo 输入错误!&goto star)
- pause
复制代码
[ 本帖最后由 pumahxh 于 2009-12-14 22:59 编辑 ] |