中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-08 15:24
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » 关于奥运倒计时的问题
可打印版本  760 / 5
第1楼 wfy150 发表于 2008-05-17 03:12
初级用户 发帖 34 积分 82 来自 江西
关于奥运倒计时的问题
以下的到了一定的时间会跳出 不是有效的八进制 是为什么?


@echo off
color 1a
mode con:lines=5 cols=40
echo wscript.sleep wscript.arguments(0) >1.vbs
if %date:~6,1%==5 set/a d=100-%date:~8,2%
if %date:~6,1%==6 set/a d=69-%date:~8,2%
if %date:~6,1%==7 set/a d=39-%date:~8,2%
if %date:~6,1%==8 set/a d=8-%date:~8,2%
:1
echo %time%>1.txt
for /f "tokens=1-3 delims=:." %%a in (1.txt) do (
set/a h=23-%%a
set/a m=59-%%b
set/a s=59-%%c
)
echo 距离奥运会还剩:%d%天%h%小时%m%分钟%s%秒
1.vbs 500
cls
goto 1;

[ Last edited by wfy150 on 2008-5-17 at 03:25 AM ]
第2楼 zqz0012005 发表于 2008-05-17 04:18
中级用户 发帖 135 积分 297
8号、9号时,%date:~8,2%为08、09,当然不是有效的八进制
第3楼 wfy150 发表于 2008-05-17 04:41
初级用户 发帖 34 积分 82 来自 江西
那要怎么改??
第4楼 slore 发表于 2008-05-17 14:24
铂金会员 发帖 2,478 积分 5,212
判断第一位是不是0,是就只取第2位。
第5楼 bat-zw 发表于 2008-05-17 19:46
金牌会员 发帖 1,276 积分 3,105
最好还是用取余的办法。
set /a a=100%a%%%100
第6楼 slore 发表于 2008-05-17 20:32
铂金会员 发帖 2,478 积分 5,212
好方法。

不过也许这个更好点。
set /a a=64%a%%%64
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023