7-1 幣值轉換 (20 分)


7-1 幣值轉換 (20 分)

輸入一個整數(位數不超過9位)代表一個人民幣值(單位為元),請轉換成財務要求的大寫中文格式。如23108元,轉換后變成“貳萬叄仟壹百零捌”元。為了簡化輸出,用小寫英文字母a-j順序代表大寫數字0-9,用S、B、Q、W、Y分別代表拾、百、仟、萬、億。於是23108元應被轉換輸出為“cWdQbBai”元。

輸入格式:
輸入在一行中給出一個不超過9位的非負整數。

輸出格式:
在一行中輸出轉換后的結果。注意“零”的用法必須符合中文習慣。

輸入樣例1:

813227345

輸出樣例1:

iYbQdBcScWhQdBeSf

輸入樣例2:

6900

輸出樣例2:

gQjB

流程圖

實驗代碼

 #include<stdio.h>
 #include<math.h>
 int main()
 {
     int i=-1,x,y,z,m,n,h,l,a;
     char c='a';
     scanf("%d",&x);
     y=x;
     if(x==0)
    {
    	printf("a");
    }
	do
	{
 		x=x/10;
		i++;
	}
   	while(x!=0);
	do
	{
		if(i>=4)
		{
		  h=y/10000;
		  l=i-4;
    }
     if(i<4)
	 {
	
          h=y;
	      l=i;
	 }
	a=pow(10,l);
	m=pow(10,i);
	z=y/m;
	if(z==0&&z!=n&&h%a!=0)
	{
		printf("a");
	}
	if(z!=0)
	{
	    printf("%c",c+z);
	if(i==8){
		printf("Y");
	}
	if(i==7||i==3)
		printf("Q");
	if(i==6||i==2)
	{
		printf("B");
	}
	if(i==5||i==1)
	{
		printf("S");
	}
	if(i==4)
	{
		printf("W");
	}
    }
	if(i==4&&z==0)
	{
		printf("W");
	}
    	if(n==0&&i==3&&z==0)
    	{
		printf("a");
    	}
		y=y%m;
   		i--;
  		n=z;
   	}
   	while(y!=0);
	return 0;
 }

實驗步驟

 利用數學函數 include<math.h> 然后定義整型變量和字符變量 接着是判斷輸入的值,  然后利用除余的方式,整理出每一位數字,然后進行判斷,最后輸出結果!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM