【发布时间】:2020-08-22 05:10:27
【问题描述】:
我正在做这个 C 练习,但我做不到。 关于我做错了什么的任何线索? (我尽量不使用 scanf 或 printf)
编写一个程序将其输入复制到其输出,替换每个字符串 一个或多个空格乘以一个空格。
int main()
{
int currentChar;
int wasBlank = 0;
while((currentChar = getchar()) != EOF){
if (currentChar != ' ') {
if (wasBlank) {
putchar(' ');
putchar(currentChar);
}
putchar(currentChar);
}
else
wasBlank = 1;
}
return 0;
}
【问题讨论】:
-
wasBlank 永远不会重置。读取非空格字符时需要重置为0。
-
你还缺少一个 else。
-
啊,对。那解决了它。非常感谢