c++语句:while ((s[i]=getchar())!='\n') i++;可否换成cin>>s;??

原程序:#include<iostream>usingnamespacestd;intmain(){intupper=0,lower=0,digit=0,sp... 原程序: #include <iostream> using namespace std; int main() {int upper=0,lower=0,digit=0,space=0,other=0,i=0; char *p,s[20]; cout<<"input string:"; while ((s[i]=getchar())!='\n') i++; p=s; while (*p!='\n') {if (('A'<=*p) && (*p<='Z')) ++upper; else if (('a'<=*p) && (*p<='z')) ++lower; else if (*p==' ') ++space; else if ((*p<='9') && (*p>='0')) ++digit; else ++other; p++; } cout<<"upper case:"<<upper<<endl<<"lower case:"<<lower<<endl; cout<<"space:"<<space<<endl<<"digit:"<<digit<<endl<<"other:"<<other<<endl; return 0; } 换了后输出很乱 展开
 我来答
手机用户62245
2015-05-12 · 超过81用户采纳过TA的回答
知道答主
回答量:141
采纳率:100%
帮助的人:151万
展开全部
不可以, 因为cin 输入字串时不能带空格,空格表示字串结束。这样就没法输入空格了,而原有的格式是可以输入的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式