C++编程:统计一个字符串中单词个数,不知道我的程序哪里有问题,总是一个结果
展开全部
程序统计单词的算法没有什么问题,问题出在输入带空格字符串的时候,采用了
cin >> str;
的方式。这种方式下输入字符串,回车后,cin遇到第一个空格即停止读入数据,导致无法输入第一个空格后的字符串。
解决方法:可以将输入语句改为
cin.get(str, 100);
这种方式下,cin会读取含空格的内容,遇到回车或读入长度达到100时停止读入。(注:示例中的100为程序中str数组的大小,也可自行设置cin读取的最大字符串长度)
追问
为什么带空格就不行呢
追答
因为如果单纯使用cin读取输入,cin遇到空格或回车就会结束读入,cin的设计如此。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询