介绍一种使用string
字符串的方法。
(string)是(C++)、(java)、(VB)等编程语言中的字符串,字符串是一个特殊的对象,属于引用类型。 (C++)标准库中(string)类以类型的形式对字符串进行封装,且包含了字符序列的处理操作。——百度百科
思路:
-
初步想法:
我们可以定义一个字符串,然后逐位输出对应的原子序数。 -
定义一个字符串s,并输入。
string s;
cin>>s;
- 按照百位->十位->个位的顺序进行判断&输出:先判断百位并输出。
if(s[0]=='0')cout<<"Nil";
if(s[0]=='1')cout<<"Un";
if(s[0]=='2')cout<<"Bi";
if(s[0]=='3')cout<<"Tri";
if(s[0]=='4')cout<<"Quad";
if(s[0]=='5')cout<<"Pent";
if(s[0]=='6')cout<<"Hex";
if(s[0]=='7')cout<<"Sept";
if(s[0]=='8')cout<<"Oct";
if(s[0]=='9')cout<<"Enn";
- 判断十位并输出。注意,这里有一些坑点需要注意。
if(s[1]=='0' && s[0]!='9')cout<<"nil";
if(s[1]=='0' && s[0]=='9')cout<<"il";
if(s[1]=='1')cout<<"un";
if(s[1]=='2')cout<<"bi";
if(s[1]=='3')cout<<"tri";
if(s[1]=='4')cout<<"quad";
if(s[1]=='5')cout<<"pent";
if(s[1]=='6')cout<<"hex";
if(s[1]=='7')cout<<"sept";
if(s[1]=='8')cout<<"oct";
if(s[1]=='9')cout<<"enn";
- 最后判断个位并输出。
if(s[2]=='0' && s[1]!='9')cout<<"nil";
if(s[2]=='0' && s[1]=='9')cout<<"il";
if(s[2]=='1')cout<<"un";
if(s[2]=='2')cout<<"bi";
if(s[2]=='3')cout<<"tri";
if(s[2]=='4')cout<<"quad";
if(s[2]=='5')cout<<"pent";
if(s[2]=='6')cout<<"hex";
if(s[2]=='7')cout<<"sept";
if(s[2]=='8')cout<<"oct";
if(s[2]=='9')cout<<"enn";
- 输出最后的词尾。这里需要特判一下。
if(s[2]=='2' || s[2]=='3')cout<<"um";
else cout<<"ium";
代码实现:
#include <bits/stdc++.h>
using namespace std;
int main()
{
string s;
cin>>s;
//--------百位--------
if(s[0]=='0')cout<<"Nil";
if(s[0]=='1')cout<<"Un";
if(s[0]=='2')cout<<"Bi";
if(s[0]=='3')cout<<"Tri";
if(s[0]=='4')cout<<"Quad";
if(s[0]=='5')cout<<"Pent";
if(s[0]=='6')cout<<"Hex";
if(s[0]=='7')cout<<"Sept";
if(s[0]=='8')cout<<"Oct";
if(s[0]=='9')cout<<"Enn";
//--------十位--------
if(s[1]=='0' && s[0]!='9')cout<<"nil";
if(s[1]=='0' && s[0]=='9')cout<<"il";
if(s[1]=='1')cout<<"un";
if(s[1]=='2')cout<<"bi";
if(s[1]=='3')cout<<"tri";
if(s[1]=='4')cout<<"quad";
if(s[1]=='5')cout<<"pent";
if(s[1]=='6')cout<<"hex";
if(s[1]=='7')cout<<"sept";
if(s[1]=='8')cout<<"oct";
if(s[1]=='9')cout<<"enn";
//--------个位--------
if(s[2]=='0' && s[1]!='9')cout<<"nil";
if(s[2]=='0' && s[1]=='9')cout<<"il";
if(s[2]=='1')cout<<"un";
if(s[2]=='2')cout<<"bi";
if(s[2]=='3')cout<<"tri";
if(s[2]=='4')cout<<"quad";
if(s[2]=='5')cout<<"pent";
if(s[2]=='6')cout<<"hex";
if(s[2]=='7')cout<<"sept";
if(s[2]=='8')cout<<"oct";
if(s[2]=='9')cout<<"enn";
//--------尾数--------
if(s[2]=='2' || s[2]=='3')cout<<"um";
else cout<<"ium";
return 0;
}