中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-25 22:39
47,812 主题排行 / 349,910 发帖 / 今日 0 篇 / 48,264 会员排行
DOS批处理 & 脚本技术(批处理室) » 计算1到100中所有奇数的和?
可打印版本  3,459 / 13
第1楼 huzixuan 发表于 2006-12-22 07:41
高级用户 发帖 219 积分 537 来自 芜湖
计算1到100中所有奇数的和?
如题,方法不限. 我该怎么写呢?
第2楼 a9319751 发表于 2006-12-22 07:48
中级用户 发帖 170 积分 439
@ECHO OFF
setlocal EnableDelayedExpansion
for /l %%i in (1,2,99) do set /a num=!num!+%%i
echo !num!
pause
第3楼 qzwqzw 发表于 2006-12-22 07:54
银牌会员 发帖 636 积分 2,343
命令行输入

for /l %i in (1,2,99) do set /a num+=%i
第4楼 jmz573515 发表于 2006-12-22 07:59
银牌会员 发帖 464 积分 1,212
for i=1 to 99 step 2
b=b+i
next
msgbox b

'保存为VBS。
第5楼 huzixuan 发表于 2006-12-22 08:20
高级用户 发帖 219 积分 537 来自 芜湖
谢了 FOR又学会了点
不过 如何写 批处理文件 运算呢?
for /l %%i in (1 2 99) do set /a num+=%%i
不行啊??

[ Last edited by huzixuan on 2006-12-22 at 08:28 AM ]
第6楼 zh159 发表于 2006-12-22 09:10
金牌会员 发帖 1,467 积分 3,687
for /l %%i in (1,2,99) do set /a num+=%%i

你少了“,”号
第7楼 redtek 发表于 2006-12-22 09:32
金牌会员 发帖 1,147 积分 2,902
我也来一个另类计算的方法:)




计算速度测试如下:




计算原理,真TMD费劲


[ Last edited by redtek on 2006-12-21 at 08:37 PM ]
第8楼 scriptor 发表于 2006-12-22 09:47
银牌会员 发帖 555 积分 1,187
Sum_Of_Prime
Rewrite it to your .txt file and Rename it as Sum.bat.
Then run it, you will get the answer!

@echo off

for /l %%a in (1,2,100) do (
(set /a sum_of_prime+=%%a )
)
echo sum_of_prime= %sum_of_prime% !

@pause

In CMD-Line , you can just type

(for /l %a in (1,2,100) do (@ set /a Sum_of_Prime+=%a ) &cls)
& echo %Sum_Of_Prime%

It will return the last result and
So, There is not anything else what you don't want to see.

Have a Try!
第9楼 scriptor 发表于 2006-12-22 09:48
银牌会员 发帖 555 积分 1,187
Zan
You are truely Bang!
第10楼 ccwan 发表于 2006-12-22 21:08
金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊
Originally posted by zh159 at 2006-12-22 09:10:
for /l %%i in (1,2,99) do set /a num+=%%i

你少了“,”号


可以不加逗号的.
第11楼 9527 发表于 2006-12-22 22:13
银牌会员 发帖 438 积分 1,185 来自 北京
其实for /l %i in (1,1,99) do @echo %i 括号中间的分隔号有多种
形式如下:
for /l %i in (1,1,99) do @echo %i
for /l %i in (1 1 99) do @echo %i
for /l %i in (1;1;99) do @echo %i
for /l %i in (1=1=99) do @echo %i
for /l %i in (1<tab>1<tab>99) do @echo %i <tab>----tab键
第12楼 namejm 发表于 2006-12-22 22:21
荣誉版主 发帖 1,737 积分 5,226 来自 成都
  9527 兄依然在孜孜不倦地研究各种技巧,往往能收到出其不意或简洁高效的效果,赞赏。
第13楼 26933062 发表于 2006-12-26 13:07
银牌会员 发帖 879 积分 2,268
@echo off
for /l %%i in (1 2 99) do set /a num+=%%i
echo %num%
pause
加上红色部分就可以了
第14楼 huzixuan 发表于 2007-01-26 21:27
高级用户 发帖 219 积分 537 来自 芜湖
厉害。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023