[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
::一周有七天
::周一 周二 周三 周四 周五 周六 周日
::利用随机数随机显示一天,开始可以用阿拉伯数字,但最终显示时要用汉字 ^_^
@echo off
set /a n=%random% %% 7
if %n%==0 echo 星期一
if %n%==1 echo 星期二
if %n%==2 echo 星期三
if %n%==3 echo 星期四
if %n%==4 echo 星期五
if %n%==5 echo 星期六
if %n%==6 echo 星期七
pause>nul
%0
::按一下变一个

TOP

  1. @echo off
  2. :loop
  3. set /a day=%random%%%7+1
  4. for /f "tokens=%day% delims= " %%a in ("一 二 三 四 五 六 日") do echo; 星期%%a&pause>nul&goto loop
复制代码
1

评分人数

    • impk: 非常精简的代码技术 + 1

TOP

@echo off
set /a n=%random% %%7 +1
if %n%==1 echo 周一
if %n%==2 echo 周二
if %n%==3 echo 周三
if %n%==4 echo 周四
if %n%==5 echo 周五
if %n%==6 echo 周六
if %n%==7 echo 周日
pause

TOP

懂了点!!@!!

TOP

@echo off
set "week=周一 周二 周三 周四  周五 周六 周日"
call :w %week%
:w
for /f "delims=" %%i in ('set /a %random%%%8') do (
    if %%i neq 0 call echo,%%%%i&pause>nul
)
goto :w
这个。也可以使用goto :label and :loop 来代替for循环。
踏实一些点.不要着急.你想要的时间都会给你.2

TOP

  1. @echo off
  2. setlocal
  3. set a1=一 & set a2=二 & set a3=三
  4. set a4=四 & set a5=五 & set a6=六 & set a7=日
  5. set /a b=%random%%%7+1
  6. call echo 星期%%a%b%%%
  7. endlocal
  8. pause
复制代码

TOP

  1. @echo off
  2. set "code=周一 周二 周三 周四 周五 周六 周日"
  3. :loop
  4. set /a rdm=%random%%%7+1
  5. set /a rdm1=rdm*3
  6. call echo %%code:~%rdm1%,2%%
  7. pause>nul
  8. goto :loop
复制代码

TOP

  1. @echo off
  2. set "code=周一 周二 周三 周四 周五 周六 周日"
  3. :loop
  4. set /a rdm=%random%%%7+1
  5. for /f "tokens=%rdm% delims= " %%i in ("%code%") do (
  6. echo %%i
  7. )
  8. pause>nul
  9. goto :loop
复制代码

TOP

@echo off
set /a t=%random% %% 7
if %t%==0 echo 周一 
if %t%==1 echo 周二 
if %t%==2 echo 周三 
if %t%==3 echo 周四 
if %t%==4 echo 周五 
if %t%==5 echo 周六 
if %t%==6 echo 周日
pause

TOP

本帖最后由 battab 于 2013-12-9 16:46 编辑
  1. @echo off
  2. :f
  3. set /a a=%random%%%7
  4. set str=日一二三四五六
  5. call echo 星期%%str:~%a%,1%%
  6. set /p q=继续(C):
  7. echo %q%
  8. if "%q%"=="c" goto f
  9. pause
复制代码
  1. @echo off
  2. :f
  3. set q=
  4. set /a a=%random%%%7
  5. set str=日一二三四五六
  6. call echo 星期%%str:~%a%,1%%
  7. set /p q=继续(C):
  8. if "%q%"=="c" goto f
  9. pause
复制代码
练手的时候发现:第一段代码按C继续时,第二次直接按回车会默认输入C而进入循环。
                        本意是想输入C可以继续,其它键一律退出的。
                        为达到目的,于是有了第二段代码。
                        我想这是一个声明变量的好例子吧。
                        写出来分享!
学习中

TOP

  1. @echo off
  2. set "code=一 二 三 四 五 六 日"
  3. set /a "n=%random%%%7+1"
  4. for /f "tokens=%n%" %%i in ("%code%") do (echo.周%%i)
  5. ping 127.1 -n 3 1>nul
  6. %0
复制代码

TOP

  1. @echo off
  2. :redo
  3. set a=%random%
  4. if %a% leq 1 goto redo
  5. if %a% gtr 8 goto redo
  6. echo 星期%a%
  7. pause>nul
复制代码

TOP

  1. @echo off
  2. set "str=12345670"
  3. set /a num=%random%%%7+1
  4. call echo week%%str:~%num%,1%%
  5. pause
复制代码
不知道怎么cmd显示不了汉子,就这样写了

TOP

  1. ::批处理随机显示星期几
  2. @echo off&chcp 936>nul
  3. set "weeks=星期一 星期二 星期三 星期四 星期五 星期六 星期日"
  4. set /a week_of=%random% %% 7 + 1
  5. for /f "tokens=%week_of%" %%i in ("%weeks%") do echo %%i
  6. pause
  7. %0
复制代码

TOP

  1. @echo off
  2. :begin
  3. set day=%random%
  4. set day=%random:~0,1%
  5. if %day%==1 echo 周一
  6. if %day%==2 echo 周二
  7. if %day%==3 echo 周三
  8. if %day%==4 echo 周四
  9. if %day%==5 echo 周五
  10. if %day%==6 echo 周六
  11. if %day%==7 echo 周日
  12. if %day%==8 goto begin
  13. if %day%==9 goto begin
  14. if %day%==0 goto begin
  15. pause>nul
复制代码

TOP

返回列表