批处理 求编写程序 查找a.txt中每一行的名字在b.txt出现的次数,并将结果降序排列输出到c.txt

a.txt中为人名(用ABC...表示)ABCDEFb.txt中为听课情况周一听课:A、B、C、D、F周二听课:A、B周三听课:B、C周四听课:B、D、F周五听课:A、B... a.txt中为人名(用A B C...表示)
A
B
C
D
E
F

b.txt中为听课情况
周一听课:A、B、C、D、F
周二听课:A、B
周三听课:B、C
周四听课:B、D、F
周五听课:A、B

c.txt中为输出的结果(要求降序输出,0节的最好不显示)
5节:B
3节:A
2节:C、D、F
展开
 我来答
yyykkkyyyy
2015-11-23 · TA获得超过3136个赞
知道大有可为答主
回答量:2691
采纳率:40%
帮助的人:3297万
展开全部
@echo off&cd/d "%~dp0"
setlocal enabledelayedexpansion
for /f "usebackq delims=" %%i in ("a.txt")do (
for /f %%j in ('find /c "%%i"^<"b.txt"') do (
if %%j gtr 0 (set/a q=99999-%%j
set "#!q!#%%i=y")))
(for /f "tokens=1,2 delims==#" %%i in ('set #')do (
set/a q=99999-%%i
if "!q!" equ "!p!" (set r=!r!、%%j)else (
if defined p echo !r!
set/a p=q
set "r=!q!节:%%j"))
echo !r!)>"c.txt"
set/p=处理完毕!正在退出... <nul&ping/n 3 127.1>nul
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式