题:
Write a function that counts the occurences of each digit in a string using the following header:
int* count(const string& s)
返回字符串里各个数字出现的次数。
#include<iostream>
#include<string>
using namespace std;
int* count(const string& s)
{
int len;
len = s.length();
int* counts = new int[10];
for (int j = 0; j < 10; j++)
counts[j] = 0;
for (int i = 0; i < len; i++)
{
if (s.at(i) - '0' >= 0 && s.at(i) - '0' <= 9)
{
counts[s.at(i) - '0']++;
}
}
return counts;
}
int main()
{
cout << "Please input: SSN is 343 32 4545 and ID is 434 34 4323 " << endl;
string str;
getline(cin, str);
int* counts = count(str);
for (int k = 0; k < 10; k++)
{
if (counts[k] != 0)
cout << "count[" << k << "] " << "is " << counts[k] << endl;
else
continue;
}
delete[] counts;
return 0;
}