Board logo

标题: [数值计算] 如何能在批处理中加上优良及格和不及格呢? [打印本页]

作者: 63918841    时间: 2009-12-2 18:44     标题: 如何能在批处理中加上优良及格和不及格呢?

@echo off&set /a var=0,num=91
for /l %%a in (1 1 9) do (
  call :lis %%a
  call echo %%a 号同学   成绩是 %%w%%
)
pause&exit
:lis
  set /a w=%random%%%%num%+10
  if %w% lss 60 set /a var+=1
  if %var% gtr 3 if %w% lss 60 goto lis
  set /a str=57+var
  if %str% equ %1 set num=50&goto lis
  if %w% lss 60 set w=%w%  不及格
goto :eof
作者: 63918841    时间: 2009-12-2 18:46     标题: 如图,哎

真的有点伤脑筋,想不出来了
作者: 523066680    时间: 2009-12-2 19:16

个别句子没去理解用意,另外,换个风格
  1. @echo off&set /a var=0,num=91,act=0
  2. :act
  3.   set /a act+=1
  4.   :lis
  5.     set /a w=%random%%%%num%+10
  6.     if %w% lss 60 set /a var+=1
  7.     if %var% gtr 3 if %w% lss 60 goto lis
  8.     set /a str=57+var
  9.     if %str% equ %1 set num=50&goto lis
  10.     rem setw(及格,不及格,是不是自己改的分数)
  11.     (
  12.      if %w% lss 60 set w=%w%       我同胞,不及格
  13.      if %w% geq 80 set w=%w%   优秀
  14.      if %w% equ 100 set w=%w% 是不是自己改的分数
  15.      )
  16.     echo 同学%act%  的成绩 %w%
  17. if %act% lss 9 goto :act
  18. pause &exit
复制代码
小弟只是小小帮忙一下,希望旁观的上正点货。
不过估计是旁观的做的题多了,看到类似就闪了……

[ 本帖最后由 523066680 于 2009-12-2 19:29 编辑 ]
作者: rwxyxy    时间: 2009-12-2 19:22

  1. @echo off&set /a var=0,num=91
  2. for /l %%a in (1 1 9) do (
  3.   call :lis %%a
  4.   call echo %%a 号同学   成绩是 %%w%%
  5. )
  6. pause>nul
  7. :lis
  8.   set /a w=%random%%%%num%+10
  9.   if %w% lss 60 set /a var+=1
  10.   if %var% gtr 3 if %w% lss 60 goto lis
  11.   set /a str=57+var
  12.   if %str% equ %1 set num=50&goto lis
  13.   if %w% lss 60 (set w=%w%  不及格) else (
  14.   if %w% lss 70 (set w=%w%  及格) else (
  15.   if %w% lss 80 (set w=%w%  中)  else (
  16.   if %w% lss 90 (set w=%w%  良) else (
  17.   set w=%w%  优))))
  18. goto :eof
复制代码

作者: 63918841    时间: 2009-12-2 21:15

谢谢,你帮了我大忙,我想研究一下
作者: 63918841    时间: 2009-12-2 21:21     标题: 真的是很好的学习

再次感谢大家,有了解一层了,各位真热心呀




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