当前位置:网站首页>7-23 currency conversion (using array conversion)
7-23 currency conversion (using array conversion)
2022-07-03 14:14:00 【Big fish】
Enter an integer ( The number of digits does not exceed 9 position ) Represents a RMB value ( The unit is yuan ), Please convert to the capital Chinese format required by the financial department . Such as 23108 element , Transformed into “ Twenty three thousand one hundred and eight ” element . To simplify the output , In lowercase a-j The order represents capital numbers 0-9, use S、B、Q、W、Y Each represents ten 、 hundred 、 Thousand 、 ten thousand 、 Billion . therefore 23108 The element should be converted to output “cWdQbBai” element .
Input format :
The input gives no more than 9 A nonnegative integer of bits .
Output format :
Output the converted result in one line . Be careful “ zero ” The usage of must conform to Chinese habits .
sample input 1:
813227345
sample output 1:
iYbQdBcScWhQdBeSf
sample input 2:
6900
sample output 2:
gQjBSolution 1 :
#include <stdio.h>
int main()
{
int i=0,j,n;
scanf("%d",&n);
char a[9];
char b[9]={'\n','S','B','Q','W','S','B','Q','Y'}; // The names of bits are stored in the array b
if(n==0){
printf("a\n");
} else{
while(n!=0){ // Numbers are stored in arrays a
a[i]=n%10;
n=n/10;
i++;
}
i=i-1;
for(;i>=0;i--){ // Array a Reverse output
if(a[i]==0){
if(i==4){ // Wan Weiwei 0 The situation of
if(a[8]!=0 && a[7]+a[6]+a[5]+a[4]==0 ){ // There are 100 million , And all ten thousand bits are zero
printf("a"); // Output a zero ( Such as 100004800)
}else{
printf("W"); // No, if there are ten thousand bits on the side, one ten thousand will be output .
}
}else{
if(a[i-1]==0){ // repeat 0 No output
continue;
}else{ // General 0 Output zero , No bit name
printf("a");
}
}
}else{
printf("%c%c",a[i]+'a',b[i]);
}
}
}
return 0;
}summary :
There is an array of numbers , There is an array of digit names . Reverse output two arrays from large to small .
The other is the determination of reading rules .
Solution 2 :
#include <stdio.h>
#include <string.h>
int main()
{
int i,n;
char a[15];
scanf("%s",&a);
char b[9]={'\n','S','B','Q','W','S','B','Q','Y'};
if(a[0]=='0') {printf("a\n"); return 0;}
n=strlen(a);
for(i=0;i<n;i++){
if(a[i]=='0'){
if(i==n-4) printf("W");
if(i<n-1&&a[i+1]=='0'||i==n-1)continue; // The pronunciation of Chinese zero
else printf("a");
}else printf("%c%c",a[i]+'a'-'0',b[n-i-1]);
}
return 0;
}Input the number as a string ( Forward input )
边栏推荐
- 【吉林大学】考研初试复试资料分享
- simpleParallax. JS (create poor visual effects for website pictures)
- Raft agreement
- [clean up the extraordinary image of Disk C]
- 消息订阅与发布
- 1px problem of mobile terminal
- Simulated access
- Exercise 6-6 use a function to output an integer in reverse order
- 28:第三章:开发通行证服务:11:在配置文件中定义属性,然后在代码中去获取;
- MIL-100( Fe) 包裹小分子阿司匹林形成[email protected](Fe)|甘草次酸修饰金属有机框架材料UiO-66-NH2(简称UiO-66-NH2-GA)
猜你喜欢
随机推荐
JS continues to explore...
剑指 Offer 28. 对称的二叉树
[clean up the extraordinary image of Disk C]
7-7 12-24 hour system
QT learning 22 layout manager (I)
FPGA测试方法以Mentor工具为例
Analysis of the characteristics of page owner
Exercise 9-1 time conversion
泰凌冲刺科创板:拟募资13亿 国家大基金与小米长江是股东
GRPC的四种数据流以及案例
虽然不一定最优秀,但一定是最努力的!
Concat and concat_ Ws() differences and groups_ Use of concat() and repeat() functions
Article content typesetting and code highlighting
Why are grass-roots colleges and universities with "soil and poverty" called "Northeast small Tsinghua"?
JS matrix zero
别再问自己适不适合做软件测试了
js . Find the first palindrome string in the array
Eight sorts
JVM garbage collector
simpleParallax. JS (create poor visual effects for website pictures)









