读后感: 汪嘉冈 (jiagangw)
读了H(hopewell--徐欣宇)的参赛程序得益不小, 也得到不少启发。
H程序与W(Jiagangw--汪嘉冈)参赛程序的基本步骤是相同的,即:按行读入--分解为单字符--剔除不要字符和连接英文(或单字节)字符.
H的程序更为简洁,或许为了生成一些辅助的信息(行序号,字符数序号等), W程序显得比H程序啰嗦.
H程序只有一处与系统编码有关,这就保证H程序其可在其他操作系统下的SAS系统运行
H程序运用 _infile_ 处理读入行,这对我有很大的启发,由此联想到可能可以解决我原来无法处理的行末空格符无法辨认的问题(虽然这不是这次参赛题目要求的)
若比较两个程序的输出结果有部分不同, 主要有以下几点:
H程序的 infile 语句中加了一个选项 obs=50, 由于这个选项使程序只读入并处理了源文件的前50行。推想这是调试程序时用的,后来提交时未删除.
由于对参赛要求理解不同,W程序剔除了除汉字和英文字外一切符号,H程序只剔除部分符号,保留了数字和部分符号(例 =,!,],[和希腊字符等), 在连接英文字符时H程序也将英文字符与数字一起连接,除了这些两个程序对中文字符处理结果是相同的。
H程序在连接英文字符程序的逻辑有一点缺陷,其结果是使全文最后一个英文词可能丢失(Bisai.txt没有这个问题,因为最后一个不是英文词)。也可能使前一行最后一个英文词与后一行第一个英文词连接(例 Bisai.txt 中第437行与439行相连了,不知这是否就是斑竹爱萌所说的“对于分行没处理”)
实在是囊中空空,论坛上花费也蛮大,见斑竹出如此高价,就不顾一切也来一试,只求有一个参与奖也可维持一段时间的生机了