一个程序在每行输出一个字的输入。无法计算出C程序中的逻辑错误
int main() {
int c;
while ((c=getchar()) != EOF) {
if (c== ' ' || c== '\n' ||c == '\t')
putchar('\n');
else {
putchar(c);
}
}
return 0;
}
上述程序正确输出结果,每行一个字。在相应地改变条件之后,我期待下面的程序每行打印一个字。但是我没有得到正确的结果。我犯了一些愚蠢的错误还是错了?
int main() {
int c;
while ((c=getchar()) != EOF) {
if (c != ' ' || c != '\n' || c != '\t')
putchar(c);
else {
putchar('\n');
}
}
return 0;
}
+1链接到德摩根定律 – 2011-05-16 20:59:58
@ Paul R.和匿名 - 谢谢;) – MByD 2011-05-16 21:03:42
@谢 - 谢谢。我想过,但懒得编辑的:) – MByD 2011-05-16 21:05:46