社区
C语言
帖子详情
如何使scanf接收空格字符?
ddxz_111
2005-04-05 08:47:14
要求给定一串字符串,并找出其中最长的单词输出.
例如给定字符串 "What are you doing"
最长的单词为doing,则程序打印字符串"doing".
我先定义了字符数组char s[50]
并用scanf("%s",s)接收字符串,可是scanf接收的字符串只到第一个空格处就停止了.
有其他方法可以解决此问题么?
...全文
264
3
打赏
收藏
如何使scanf接收空格字符?
要求给定一串字符串,并找出其中最长的单词输出. 例如给定字符串 "What are you doing" 最长的单词为doing,则程序打印字符串"doing". 我先定义了字符数组char s[50] 并用scanf("%s",s)接收字符串,可是scanf接收的字符串只到第一个空格处就停止了. 有其他方法可以解决此问题么?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ddxz_111
2005-04-06
打赏
举报
回复
谢谢
pcboyxhy
2005-04-05
打赏
举报
回复
int max=0;
int i;
char s[50];
char maxs[20];
while( scanf("%s", s)!=EOF )
if( (i=strlen(s)) > max)
{
max=i;
strcpy(maxs, s);
}
kobefly
2005-04-05
打赏
举报
回复
fgets()
C语言gets()和
scanf
()函数的区别
scanf
( )函数和gets( )函数都可用于输入
字符
串,但在功能上有区别。若想从键盘上输入
字符
串hi hello,则应该使用__gets__函数。 gets可以
接收
空格
;而
scanf
遇到
空格
、回车和Tab键都会认为输入结束,所有它不能
接收
空格
。 char string[15]; gets(string); /*遇到回车认为输入结束*/
scanf
(%s,string); /*遇到
空格
认为输入结束*/ 所以在输入的
字符
串中包含
空格
时,应该使用gets输入。
scanf
和gets获取
字符
串时的区别 在C语言中,能构获取
字符
串的函数至少有两个:
c语言获取用户输入
字符
串是
scanf
和gets的区别详解
解释 gets(s)函数与
scanf
(“%s”,&s) 相似,但不完全相同,使用
scanf
(“%s”,&s) 函数输入
字符
串时存在一个问题,就是如果输入了
空格
会认为
字符
串结束,
空格
后的
字符
将作为下一个输入项处理,但gets()函数将
接收
输入的整个
字符
串直到遇到换行为止。 1.
scanf
() 所在头文件:stdio.h 语法:
scanf
(“格式控制
字符
串”,变量地址列表); 接受
字符
串时:
scanf
(“%s”,
字符
数组名或指针); 2.gets() 所在头文件:stdio.h 语法:gets(
字符
数组名或指针); 两者在接受
字符
串时: 1.不同点:
scanf
不能接受
空格
、制表符Tab、回车等
scanf
读取含
空格
的
字符
串
scanf
()函数
接收
输入数据时,遇以下情况结束一个数据的输入: ① 遇
空格
、“回车”、“跳格”键。 ② 遇宽度结束。 ③ 遇非法输入。
scanf
接收
包含
空格
的
字符
串 #include <stdio.h> int main() { char str[80];
scanf
...
scanf
接收
空格
输入_【C/C++】【输入】关于
scanf
:输入
空格
,多次使用
一、C/C++中带
空格
字符
串的输入C++中的cin和C中的
scanf
都是遇到
空格
或回车结束。如果要让
scanf
接收
空格
,可以用读入
字符
集合的方式。%[]char a[100];
scanf
("%[^\n]",s);//%[]:读入此集合内所限定的
字符
。**一旦遇到不是此集合内的
字符
就停止。**//%[^ ]:^表示非二、
scanf
的多次输入
scanf
无法连续使用,因为缓冲区不足。1.stdin默认缓...
C语言
70,020
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章