个位数统计 (15分)
总结:
- 1000位数字,远超出整型存储范围,用string存储。
- 关于string:例string s;
- s.length():直接得出字符串长度,即所有字符个数
- s[i]:下标i存储的内容。i的范围是[0,length-1]。
- 字符型数字→整型数字的转换:s[i] - '0'。 例如 '9'-'0'→9
代码:
#include <iostream>
#include <cstring>
using namespace std;
int main(){
string s;
int len, cnt[10]={0},index;
cin>>s;
len = s.length();
for(int i=0; i<len; i++){
index = s[i] - '0';
cnt[ index ]++;
}
for(int i=0; i<10; i++){
if( cnt[i] ){
cout<<i<<":"<<cnt[i];
len -= cnt[i];
if( len )
cout<<endl;
}
}
return 0;
}