找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: namejm

批处理for语句从入门到精通配套练习题

[复制链接]
发表于 2013-8-20 12:58:32 | 显示全部楼层
看了很多贴,自己也写运行了,很多网友疑惑“bathhome.net”是不可分隔的;
实际顶楼给出的应是str=I love,bbs;bathhome=cn,可能由于网站更新导致str=I love,bbs;bathhome.net;
希望能解除部分网友疑惑!

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 感谢反馈!

查看全部评分

发表于 2013-9-9 21:07:35 | 显示全部楼层
A1:

  1. @echo off
  2. set str=I love,bbs,bathome.net
  3. set str=%str:.= %
  4. for %%I in (%str%) do echo %%I
  5. pause
复制代码
A2模仿12楼的)

  1. @echo off
  2. set str=I love,bbs;bathome.net
  3. set str=%str:.= %
  4. for %%I in (%str%) do (set a=%%I)
  5. echo %a%
  6. pause
复制代码
发表于 2013-9-11 08:54:27 | 显示全部楼层
回复 218# zhksun


    就是就是,前面的跟帖没人说分不开的,我试了一次又一次,还是分不开,只好一页一页的翻贴,才发现原来答案在这里
发表于 2013-10-27 12:56:12 | 显示全部楼层
A1
@echo off
set str=I love,bbs;bathoe.net
set str=%str:.=,%
for %%i in (%str%) do echo %%i
pause

A2
@echo off
set str=I love,bbs;bathoe.net
::set str=%str:~-3,3%
set str=%str:.=,%
for %%i in (%str%) do (if %%i==net echo %%i)
pause
发表于 2013-11-30 07:03:55 | 显示全部楼层
路过看看!!!!!
发表于 2014-3-28 11:58:05 | 显示全部楼层
回复 216# zl20083013


   我去,学习了
发表于 2014-8-22 16:38:21 | 显示全部楼层
回复 218# zhksun


    豁然开朗。。我说怎么前边A1题的答案明显不对,版主还要加分。
我也只做出来第一个,用了set替换字符。第二题没想出来,,脑子有点短路。。。

总结了一下,如果按现在的题目字面要求的话:
A1题方案
set替换“.”  (点号不是默认分隔符)
  1. for %%i in (%str:.=,%) do echo %%i
复制代码
if判断
  1. for %%i in (%str%) do (
  2. if %%i==bathome.net (echo bathome & echo net) else echo %%i
  3. )
复制代码
A2题方案:
cls清屏
  1. for %%i in (%str%) do cls&echo %%i
复制代码
赋值给变量
  1. for %%i in (%str%) do (set a=%%i)
  2. echo %a%
复制代码
if判断
  1. for %%i in (%str%) do (
  2. if %%i==bathome.net echo net
  3. )
复制代码
发表于 2014-12-14 19:18:24 | 显示全部楼层
A1:
@echo off
set str=I love,bbs;bathome=net
for %%a in (%str%) do echo %%a
pause >nul

a2:
@echo off
set str= I love,bbs;bathome=net
for  %%a in (%str%) do cls&echo %%a
pause>nul
发表于 2015-4-16 15:27:09 | 显示全部楼层
新手来报道,试着解题,第一题
@echo
set str=I love,bbs;bathome=net
for %%i in (%str%) do echo "%%i"
pause
发表于 2015-6-17 11:44:04 | 显示全部楼层
本帖最后由 只是时间问题 于 2015-6-17 11:45 编辑

  1. @ECHO OFF
  2. echo.=-=-=-=-=A1=-=-=-=-=
  3. set str=I love,bbs;bathome.net
  4. for %%i in (%str%) do echo %%i
  5. echo.=-=-=-=-=A2=-=-=-=-=
  6. set str=I love,bbs;bathome.net
  7. set a=
  8. for %%i in (%str%) do (set a=%%i)
  9. echo %a%
复制代码
发表于 2015-7-12 11:47:37 | 显示全部楼层
A1:
@echo off
set str=I love,bbs;bathome=net
for %%i in (%str%) do echo %%i
pause

A2:
@echo off
set str=I love,bbs;bathome=net
for %%i in (%str%) do (if %%i==net echo %%i)
pause
发表于 2016-6-1 12:59:00 | 显示全部楼层
A1:
  1. @echo off
  2. set str=I love,bbs;bathome=net
  3. for %%a in (%str%) do echo %%a
复制代码
A2:
  1. @echo off
  2. set str=I love,bbs;bathome=net
  3. for %%a in (%str=I love,bbs;bathome%) do echo %%a
复制代码
发表于 2016-8-28 19:50:23 | 显示全部楼层
A1:
  1. @echo off
  2. set str=I love,bbs;bathome.net
  3. set str=%str:.= %
  4. for %%a in (%str%) do echo %%a
  5. pause
复制代码
A2:
  1. @echo off
  2. set str=I love,bbs;bathome.net
  3. set str=%str:.= %
  4. for %%a in (%str%) do if %%a == net;echo %%a
  5. pause
复制代码
发表于 2017-2-18 22:47:32 | 显示全部楼层
好难。。。。
发表于 2017-5-26 11:53:46 | 显示全部楼层
题目更改后很简单。
A1:
@echo off
set str=I love,bbs;bathome=net
for %%I in (%str%) do  echo "%%I"
pause

A2:
@echo off
set str=I love,bbs;bathome=net
for %%i in (%str%) do if %%i==net echo %%i
pause



最初的题目(条件str=I love,bbs;bathhome.net),难度高。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 03:54 , Processed in 0.025020 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表