判断字符串是数字还是文字
时间: 2024-03-27 13:38:22 浏览: 35
判断字符串是数字还是文字可以通过以下方法实现:
1. 首先判断字符串中是否只包含数字字符和小数点或负号,如果是,则可以认为它是数字字符串。
2. 如果字符串中包含其他非数字字符,可以认为它是文字字符串。
以下是一个示例代码,判断字符串 `str` 是数字还是文字:
```
bool isNumber(string str) {
int n = str.length();
bool hasDecimalPoint = false;
bool hasNegativeSign = false;
// 判断每个字符是否都是数字字符
for (int i = 0; i < n; i++) {
if (isdigit(str[i])) {
continue;
} else if (str[i] == '.' && !hasDecimalPoint) {
hasDecimalPoint = true;
} else if (str[i] == '-' && !hasNegativeSign && i == 0) {
hasNegativeSign = true;
} else {
return false;
}
}
return true;
}
bool isText(string str) {
return !isNumber(str);
}
int main() {
string str = "123.45";
if (isNumber(str)) {
cout << "This is a number." << endl;
} else if (isText(str)) {
cout << "This is a text." << endl;
}
return 0;
}
```
如果字符串 `str` 是数字,则输出 "This is a number.",否则输出 "This is a text."。
阅读全文
相关推荐
















