Board logo

标题: [特效代码] 这个不断改变cmd窗口前景和背景色的代码错在哪里? [打印本页]

作者: 悬崖之树    时间: 2012-7-11 19:28     标题: 这个不断改变cmd窗口前景和背景色的代码错在哪里?

本帖最后由 悬崖之树 于 2012-7-11 20:02 编辑

我的代码是:
  1. @echo off
  2. mode con cols=20 lines=20
  3. cls
  4. set str=********************
  5. for /l %%i in (1 1 10) do (
  6. echo %str%
  7. )
  8. :ks
  9. set /a m=%random%%%16  &set /a n=%random%%%16
  10. if %m%==10 set m=a
  11. if %m%==11 set m=b
  12. if %m%==12 set m=c
  13. if %m%==13 set m=d
  14. if %m%==14 set m=e
  15. if %m%==15 set m=f
  16. if %n%==10 set n=a
  17. if %m%==11 set n=b
  18. if %n%==12 set n=c
  19. if %n%==13 set n=d
  20. if %n%==14 set n=e
  21. if %n%==15 set n=f
  22. if %m%==%n% goto ks
  23. color %m%%n%
  24. pause>nul & goto ks
复制代码
但是没有达到我预期的效果,前面几次变色是正确的,可是后面就出现文字了,但是我的代码没有输出文字啊!
希望大侠们给出解决方案。


还有这个改进版的:
  1. @echo off
  2. mode con cols=20 lines=20
  3. :loop
  4. cls
  5. set str=********************
  6. for /l %%i in (1 1 10) do (
  7. echo %str%
  8. )
  9. :ks
  10. set /a m=%random%%%16  &set /a n=%random%%%16
  11. if %m%==10 set m=a
  12. if %m%==11 set m=b
  13. if %m%==12 set m=c
  14. if %m%==13 set m=d
  15. if %m%==14 set m=e
  16. if %m%==15 set m=f
  17. if %n%==10 set n=a
  18. if %m%==11 set n=b
  19. if %n%==12 set n=c
  20. if %n%==13 set n=d
  21. if %n%==14 set n=e
  22. if %n%==15 set n=f
  23. if %m%==%n% goto ks
  24. color %m%%n%
  25. pause>nul & goto loop
复制代码
就好了很多,但是偶尔仍旧会出现文字。到底是为什么呢?
作者: lky216    时间: 2012-7-11 20:08

这个有个代码很简单的,就是写的比较少。但忘记了。
作者: apang    时间: 2012-7-11 20:13

晕,第19行中的%m%应为%n%
作者: 悬崖之树    时间: 2013-1-14 18:21

回复 2# lky216


    看看下面的代码,是你要找的吗?
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. mode con cols=20 lines=20
  4. set str=********************
  5. for /l %%i in (1 1 10) do (
  6.      echo %str%
  7. )
  8. :loop
  9. set str=0123456789ABCDEF
  10. set /a i=%random%%%15
  11. set /a j=%random%%%15
  12. if %i%==%j% goto loop
  13. set /a i=!str:~%i%,1!
  14. set /a j=!str:~%j%,1!
  15. color %i%%j%
  16. ping /n 1 127.0.0.1>nul
  17. goto loop
复制代码





欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2