注册 登录
编程论坛 C语言论坛

c语言 scanf问题

wuxiami 发布于 2022-07-24 17:58, 964 次点击
大佬们    如何仅使用scanf一句话来消除输出的多余空行   
while (getchar() != '\n')//清理空行
        continue;     
这个我知道     
 就是想知道如何只用一句scanf消除多余空行
万分感谢
2 回复
#2
rjsp2022-07-25 09:30
如何仅使用scanf一句话来消除输出的多余空行
while (getchar() != '\n')//清理空行
        continue;
你的文字描述与你的代码并不相符,首先你的代码并不仅仅只清理“空”,非空它也一样读掉;其次它只处理一行,不可能“多”。

从你的代码来看,只允许一句的话,你需要的估计是 scanf( "%*[^\n]%*c" );
但要想完全一致,还得分成两句,即
scanf( "%*[^\n]" );
scanf( "%*c" );
#3
wuxiami2022-07-25 09:44
回复 2楼 rjsp
谢谢大师指导!!
1