先将“0,1,2,3,4,5,6,7,8,9”所对应的的字符串保存,再用密码串的各个子串与之比较,输出相应十进制数。截取密码串获得子串,要用到substr( )函数,其参数与erase( )函数的参数一样,可以是范围,也可以是某个字符的地址。
#include<iostream>
#include<string>
using namespace std;
struct word{
string num;
}gro[10];
int main(){
string pass;
while(cin>>pass){
for(int i=0;i<10;i++)
cin>>gro[i].num;
for(int i=10;i<=80;i=i+10){
string t=pass.substr(i-10,10);
for(int j=0;j<10;++j)
if(gro[j].num==t){
cout<<j;
break;
}
}
cout<<'\n';
}
return 0;
}