关于输入多组测试数据,C#

最近在学习C#,所以问题来了。
在很多ACM问题中,都会有一句输入多组测试数据,以文件结尾。
用C或者C++都是可以以关键字EOF实现。
我想问,如果用C#去实现这一个功能,代码怎样才能更简单、快捷?

6个回答

StreamReader类:
Read方法,到达尾端没有字符可以读到时,返回0.
Peek方法,如果没有字符可以读取,返回-1.
ReadLine方法,到达尾端时,返回null.
ReadBlock方法,到达尾端,没有字符可以再读时,返回0.
ReadToEnd方法,一次读完。
这几种方法没有太大的区别,就是级别越来越高而已。

用 TextReader.ReadLine(),返回 null 就是文件结束。

EOF = End Of File,文件结束标志。
C#中直接判断文件是否结束就可以了,用不着EOF。
EOF是C中的一个宏。

问题已解决,使用StreamWriter和StreamReader分别对文件或者txt进行输入或读取。

我以前在学校的时候也参加过ACM程序设计大赛,不过也只限于校级,市级或者往上就不支持C#语言了,真可惜。
ACM问题,通常都是使用控制台程序来实现的。你可以通过Console.ReadLine()来直接读取一行,比如两个数字用空格隔开的话,你可以string.Split(' '),以空格来拆分,存到一个stirng数组中。
最终输入你可以是二维字符串数组,也可以是一维字符串数组(用的时候再以空格拆分开)。
我都是这样处理的,可能仁者见仁智者见智,别人可能会有别的好一点的办法吧。

我以前在学校的时候也参加过ACM程序设计大赛,不过也只限于校级,市级或者往上就不支持C#语言了,真可惜。
ACM问题,通常都是使用控制台程序来实现的。你可以通过Console.ReadLine()来直接读取一行,比如两个数字用空格隔开的话,你可以string.Split(' '),以空格来拆分,存到一个stirng数组中。
最终输入你可以是二维字符串数组,也可以是一维字符串数组(用的时候再以空格拆分开)。
我都是这样处理的,可能仁者见仁智者见智,别人可能会有别的好一点的办法吧。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐