币值转换
1)编程代码:
#include<stdio.h>
#include<string.h>
int main()
{
int lenth,l;
char str[10];
gets(str);
lenth=strlen(str);
while(lenth>9){
lenth--;
}
l=lenth;。
int t=1;
if(str[1]=='0'&&str[2]=='0'&&str[3]=='0'&&str[4]=='0'){
t=0;//若万位,十万位,百万位,千万位都为零,则不需要输出单位万
}else{
t=1;
}
for(int i=0;i<lenth;i++,l--){
char c=str[i];
switch(c){
case'0':c='a';break;
case'1':c='b';break;
case'2':c='c';break;
case'3':c='d';break;
case'4':c='e';break;
case'5':c='f';break;
case'6':c='g';break;
case'7':c='h';break;
case'8':c='i';break;
case'9':c='j';break;
default:break;
}
if(lenth==1&&str[0]=='0'){
printf("a");
return 0;//当只输入一个数时,且该数为0
}
if(c=='a'){//0特殊,单独考虑
if(l==5&&t){
printf("W");
}else{//当0不在万位时
for(i++,l--;i<lenth;i++,l--){
if(str[i]=='0'){
if(l==5&&t){
printf("W");
}
}
else{
printf("a");
l++;i--;
break;
}
}
}
}else{
printf("%c",c);//输出字符
switch(l){
case 9:printf("Y");break;
case 8:case 4:printf("Q");break;
case 7:case 3:printf("B");break;
case 6:case 2:printf("S");break;
case 5:printf("W");break;
default:break;
}
}
}
return 0;
}
2)设计思路:
3)调试过程中遇到的问题及解决办法
没有遇到问题,一次性通过。