直接上代码
#include<stdio.h>
int qiufang(int a)
{
int sum=1;
for (int j = 0; j < 9-a; j++)
{
sum *= 10;
}
return sum;
}//求出10的a次方
char shuchu(int a)
{
if (a==0)
{
printf("a");
}
else if (a==1)
{
printf("b");
}
else if (a == 2)
{
printf("c");
}
else if (a == 3)
{
printf("d");
}
else if (a == 4)
{
printf("e");
}
else if (a == 5)
{
printf("f");
}
else if (a == 6)
{
printf("g");
}
else if (a == 7)
{
printf("h");
}
else if (a == 8)
{
printf("i");
}
else
{
printf("j");
}
return 0;
}//决定输出的数字
int main()
{
int MONEY,a[9];
scanf("%d", &MONEY);
a[0] = MONEY / 100000000;
a[1] = MONEY / 10000000 - 10 * a[0];
a[2]= MONEY % 10000000 / 1000000;
a[3]= MONEY % 1000000 / 100000;
a[4]= MONEY % 100000 / 10000;
a[5]= (MONEY % 10000) / 1000;
a[6]= (MONEY % 1000) / 100;
a[7]= (MONEY % 100) / 10;
a[8] = MONEY % 10; //算各个位数上的数字,各位肯定都有自己的办法,大部分可能都比我好
int wei;
for (int i = 0; i < 9; i++)
{
if (MONEY==0)
{
wei = 1;
break;
}
if (a[i]!=0)
{
wei=9 - i;
break;
}
}//算出位数
for (int i = 0; i < 9; i++)
{
if (a[i]!=0)
{
shuchu(a[i]);
if (i==0)
{
printf("Y");
}
if (i==1||i==5)
{
printf("Q");
}
if (i==2||i==6)
{
printf("B");
}
if (i == 3 || i == 7)
{
printf("S");
}
}//输出属于各个位数的代表
if (wei>=5&&i==4&&(MONEY%100000000-MONEY%10000)>0)
{
printf("W");
}//在1亿和万位之间存在数字的时候输出万
if (i>0&&a[i]==0&&a[i-1]!=0&&MONEY%qiufang(i)>0)
{
printf("a");
}//当这个位数上为0而上一位不为零的时候输出0
}if (MONEY==0)
{
printf("a");
}//钱为零,输出0
return 0;
}