新手请教
#include <stdio.h>
#define NONBLANK 'a '
main ()
{
int c , lastc;
lastc = NONBLANK ;
while ( ( c = getchar () ) != EOF )
{
if ( c != ' ' )
putchar ( c );
else if ( lastc != ' ' )
putchar ( c );
lastc = c ;
}
}
谁能详细的给我解释一下这个程序,看得不大明白。谢谢了。
[解决办法]
并不是合成只是输出的时候
遇到多个空格只输出一个
没啥技巧 就是定义了一个中间变量lastc 定义为非空格
遇到第一个空格时候把这个变量赋空格
以后如果碰到都是空格字符就不再输出
如果遇到不是空格字符 直接输出,再把这个lastc 赋非空格就是这样来回赋值判断
很简单