输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。
我的代码如下:
#include
#include
using namespace std;
int num(int n)
{
int t=0;
while (n>0)
{
n=n/10;
t++;
}
return t;
}
int main()
{
int i,t,k,z;
cin>>i;
if(i<0)
{
cout<<"fu"<<' ';
i=-i;
}
t=num(i);
k=pow(10,t-1);
for(int j=1;j<=t;j++)
{ z=i/k;
switch(z)
{
case 0: cout<<"lin"<<' ';break;
case 1: cout<<"yi"<<' ';break;
case 2: cout<<"er"<<' ';break;
case 3: cout<<"san"<<' ';break;
case 4: cout<<"si"<<' ';break;
case 5: cout<<"wu"<<' ';break;
case 6: cout<<"liu"<<' ';break;
case 7: cout<<"qi"<<' ';break;
case 8: cout<<"ba"<<' ';break;
case 9: cout<<"jiu"<<' ';break;
}
i=i%k;
k/=10;
}
cout<<endl;
return 0;
}