1. 问题描述:
获取用户的输入时,我们小白的第一反应是scanf,scanf函数能够输入的函数有很多,比如int,double,float,char..., 但当用它来实现含有空格的字符串输入时,例如:“hello word!”时,它总是在空格处停止扫描。
我们用scanf("%s",str);输入 “hello word!” 字符串后,str输出却只有 “hello” ,这并不是我们想要的。这是因为scanf扫描到 “hello” 后面的空格,就认为对str的扫描结束(即空格没有被扫描),并舍弃后面的" word!",只得到了 “hello” 。
#include<stdio.h>
int main()
{
char msg[15];
printf("请输入字符串:");
scanf("%s",msg);
printf("字符串为:%s",msg);
return 0;
}
运行结果跟理想不合