Pro.ID1007 Title字符输入和输出 Title链接http://10.20.2.8/oj/exercise/problem?problem_id=1007 AC2536 Submit6153 Ratio41.22% 时间&空间限制描述读入一个字符,然后输出它。 输入有多个测试用例。 每个测试用例占一行:是一个字符。 输出Description 读入一个字符,然后输出它。 Input 有多个测试用例。 每个测试用例占一行:是一个字符。 Output 为每个测试用例输出一行:刚刚读入的字符。 Sample Input a Sample Output a Hint 本题有多组测试数据,以EOF作为结束标志,需要采用循环语句来逐一处理,可以参考如下的方式处理输入: 但是...这题很奇怪,输出时不加换行就能AC,加了换行就PE。而正确做法应该是加换行的。原因正在找。 原因找到了:输入数据本身就含有换行,比如,它的格式是: a'\n' 所以,如果我们的代码写为:printf( "%c\n", ch ); 那么,读入了换行符之后,也输出换行符,并且再加上一个换行符, 那输出就变成了: a'\n' 这就引发了Presentation Error。 还有一个方法:用scanf读入一个字符后,接着用一个getchar()把换行符吸收掉,这样输出就可以加换行了。这个方法有点高端,一般人我不告诉他。 Author 样例输入a 样例输出a 提示本题有多组测试数据,以EOF作为结束标志,需要采用循环语句来逐一处理,可以参考如下的方式处理输入: 但是...这题很奇怪,输出时不加换行就能AC,加了换行就PE。而正确做法应该是加换行的。原因正在找。 原因找到了:输入数据本身就含有换行,比如,它的格式是: a'\n' 所以,如果我们的代码写为:printf( "%c\n", ch ); 那么,读入了换行符之后,也输出换行符,并且再加上一个换行符, 那输出就变成了: a'\n' 这就引发了Presentation Error。 还有一个方法:用scanf读入一个字符后,接着用一个getchar()把换行符吸收掉,这样输出就可以加换行了。这个方法有点高端,一般人我不告诉他。 作者 |