C++中已用cin.getline()读入一行字符,如何从输入流中逐个提取字符,并且要判断该字符是浮点数还是符号?
这里是两个问题,第一是如何逐个提取字符进行判断,第二是怎么区分浮点数和符号,我知道isdigit();可以判断int型,但如何判定float型?...
这里是两个问题,第一是如何逐个提取字符进行判断,第二是怎么区分浮点数和符号,我知道isdigit();可以判断int型,但如何判定float型?
展开
1个回答
展开全部
从读入的字符串中查找字符 '.' 就可以了
更多追问追答
追问
可不可以具体写一下语句,另外如何区分浮点数与符号
追答
char str[20];
cin.getline(str,20,'\n');
int length = strlen(str);
for(int i = 0;i < length;i++)
if(str[i] == '.'){
cout << str << "is a float num.\n";
break;
}
if(i == length)
cout << str << "is a int num.\n";
还有什么不懂的问题么?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询