中易网

C语言里可以只用scanf读入空格吗?

答案:5  悬赏:0  
解决时间 2021-11-27 07:28
不用gets和getchar。
就只用scanf,比如the king of
直接用scanf("%s",str);肯定不好使,只读进了the
而且单词数和每次间隔的空格数也是未知的。不可以采用scanf("%s %s %s",&a,&b,&c);这种形式。
请问有人知道有什么办法实现吗?
最佳答案
char string[100],ch;
int i=0;
do
{
scanf("%c",&ch);
string[i++]=ch;
}
while(ch!='\n');
string[i-1]='\0';
全部回答
可以。不用系统提供的函数库,自己编一个代替。
就用getchar吧,scanf中空格就是表示输入下一个字符串,不能读取空格,你说的方式可以分别读取the、king、 of,但读取不到空格
不那么方便,因为scanf()读入字符串时会跳过空格、回车,而只有读字符(%c)才读空格和回车,这与getchar()就没区别了。再有就是用%[]格式符,用法自己上网查吧。 可以用下面的方法解决,不过挺麻烦的。 #include int main() { char s[BUFSIZ], c; while (scanf("%s%*[ \t]", s) == 1) { printf("s = %s\n", s); if (scanf("%c", &c) == 1) { if (c == '\n') break; else ungetc(c, stdin); } else break; } return 0; }
用 gets() 就行了,scanf() 有些地方实在是....
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
西流沱社区居委会地址在哪,我要去那里办事
調理的意思是什么?調理的释义是什么啊?
融合的意思是什么?融合的释义是什么啊?
其龙社区居委会地址在什么地方,想过去办事
浮县的意思是什么啊?请解释下!
挠正的意思是什么?挠正的释义是什么啊?
包公是不是非洲来的移民?大概是从现在哪个国
倚天屠龙记里的第一女主角是谁啊?是赵敏还是
酒囊饭袋的意思是什么啊?请解释下!
双面打印问题
信鸿的意思是什么?信鸿的释义是什么啊?
从潍坊北上高速至沾化东下路程是多少
起起伏伏,跌跌荡荡,终究归于平淡,什么意思?
成都卖肠粉机主要在那个地方
为什么屏幕分辨率不同,他们是根据什么确定的.
推荐资讯
我想买个1T的硬盘,哪个品牌的好点?
衡阳市蒸湘区计划生育局办公地址在什么地方,
阶合的意思是什么啊?请解释下!
考上航空学校以后就能当空姐了吗
信贷利率太高,后悔了对这种异议怎么处理
诗歌朗诵。。。祖国啊,我亲爱的祖国。。应该
乡宁县尉庄派出所办公地址在什么地方,我要处
长江新村社区居委会地址有知道的么?有点事想
250克多少两
屏室的意思是什么?屏室的释义是什么啊?
刘佳的赤道和北极QQ空间背景音乐链接地址
buynow和subscribe有什么区别
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?