输入一串带有整数的字符串,输出其中连续的数字(一个数字也算)组成的整数有多少个?例如,输入字符串“a123b012c”,其中连续的整数有123、12(前面多余0可以认为没有)两个,所以输出2【C/C++】
时间: 2024-04-16 15:27:01 浏览: 74
将字符串中连续的数字作为一个整数输出_并统计整数的个数
你可以使用以下C++代码来解决这个问题:
```cpp
#include <iostream>
#include <string>
using namespace std;
int countConsecutiveIntegers(string str) {
int count = 0;
int i = 0;
bool isDigits = false;
while (i < str.length()) {
if (isdigit(str[i])) {
int start = i;
while (i < str.length() && isdigit(str[i])) {
i++;
}
int end = i - 1;
if (start != end) {
count++;
}
} else {
i++;
}
}
return count;
}
int main() {
string str;
cout << "输入字符串: ";
cin >> str;
int result = countConsecutiveIntegers(str);
cout << "连续整数的个数: " << result << endl;
return 0;
}
```
这段代码中,`countConsecutiveIntegers` 函数用于计算连续整数的个数。它遍历输入字符串,当遇到数字字符时,就标记为 `isDigits`,然后继续查找连续的数字字符。当遇到非数字字符时,如果 `isDigits` 为真且找到了多个数字字符,则计数加一。最后返回计数的结果。
在 `main` 函数中,首先获取用户输入的字符串,然后调用 `countConsecutiveIntegers` 函数,并将结果输出。
希望能对你有所帮助!如果还有其他问题,请随时提问。
阅读全文