我想做个批,不停地输入4位数,最多200个,对比之前所有输入,相同的话就提示,这个能实现吗?
产生临时文件没问题。
二楼不是我想要的
我想的大概如下
:a
1:键盘输入数,用数组array保存数加个","
2:用for 截取array对比数,相同返回:a重新输入,不相同输入文件,再返回a
问题如下
1:我输入太多,for数组会不会太慢?有么需要等?有么更好的办法?
2:屏幕下面会echo数组出来,让我知道输入多少个不相同的数了
我的浏览器出问题,在编辑帖子老是关掉,回头一看,3楼都出来了~~~
!dataSet:%%v-=!我看不明白什么意思=。=
4楼也有个!str:%%a=!~~~~~
测试下发现4楼的代码我改下就可以达到我想要的结果了,我还是想问下
for /f %%a in (",!n!,") do if "!str:%%a=!"=="!str!"
与我想到的截取for /f "delims=," %%i in %array% do if %i%==%数% 有什么区别
ok咯。嗯嗯
发下我最后的代码- @echo off
- setlocal enableDelayedExpansion
- set str=,
- :loop
- set /p n=请输入数字&cls
- echo %n%|findstr /be "[0-9]*">nul||goto loop
- set n=0000!n!
- set n=!n:~-4!
- for /f %%a in (",!n!,") do if "!str:%%a=!"=="!str!" (
- set str=,!n!!str!
- set /a m+=1
- echo !str!
- echo 总共有!m!个号码
- ) else (
- echo 已存在!n!
- echo !str!
- echo 总共有!m!个号码
- )
- goto loop
复制代码
|