package com.heyang;
/**
* 將10億以內的阿拉伯數字轉成漢字大寫形式
* @author xizhenyin
*
*/
public class CnUpperCaser {
// 整數部分
private String integerPart;
// 小數部分
private String floatPart;
// 將數字轉化為漢字的數組,因為各個實例都要使用所以設為靜態
private static final char[] cnNumbers={'零','壹','貳','叄','肆','伍','陸','柒','捌','玖'};
// 供分級轉化的數組,因為各個實例都要使用所以設為靜態
private static final char[] series={'元','拾','百','仟','萬','拾','百','仟','億'};
/**
* 構造函數,通過它將阿拉伯數字形式的字元串傳入
* @param original
*/
public CnUpperCaser(String original){
// 成員變數初始化
integerPart="";
floatPart="";
if(original.contains(".")){
// 如果包含小數點
int dotIndex=original.indexOf(".");
integerPart=original.substring(0,dotIndex);
floatPart=original.substring(dotIndex+1);
}
else{
// 不包含小數點
integerPart=original;
}
}
/**
* 取得大寫形式的字元串
* @return
*/
public String getCnString(){
// 因為是累加所以用StringBuffer
StringBuffer sb=new StringBuffer();
// 整數部分處理
for(int i=0;i<integerPart.length();i++){
int number=getNumber(integerPart.charAt(i));
sb.append(cnNumbers[number]);
sb.append(series[integerPart.length()-1-i]);
}
// 小數部分處理
if(floatPart.length()>0){
sb.append("點");
for(int i=0;i<floatPart.length();i++){
int number=getNumber(floatPart.charAt(i));
sb.append(cnNumbers[number]);
}
}
// 返回拼接好的字元串
return sb.toString();
}
/**
* 將字元形式的數字轉化為整形數字
* 因為所有實例都要用到所以用靜態修飾
* @param c
* @return
*/
private static int getNumber(char c){
String str=String.valueOf(c);
return Integer.parseInt(str);
}
/**
* @param args
*/
public static void main(String[] args) {
System.out.println(new CnUpperCaser("123456789.12345").getCnString());
System.out.println(new CnUpperCaser("123456789").getCnString());
System.out.println(new CnUpperCaser(".123456789").getCnString());
System.out.println(new CnUpperCaser("0.1234").getCnString());
System.out.println(new CnUpperCaser("1").getCnString());
System.out.println(new CnUpperCaser("12").getCnString());
System.out.println(new CnUpperCaser("123").getCnString());
System.out.println(new CnUpperCaser("1234").getCnString());
System.out.println(new CnUpperCaser("12345").getCnString());
System.out.println(new CnUpperCaser("123456").getCnString());
System.out.println(new CnUpperCaser("1234567").getCnString());
System.out.println(new CnUpperCaser("12345678").getCnString());
System.out.println(new CnUpperCaser("123456789").getCnString());
}
}
② 一二三的大寫怎麼寫
一二三的大寫為壹、貳、叄。
中文金額數字大寫分別為「壹、貳、叄、肆、伍、陸、柒、捌、玖、拾、佰、仟、萬、億、圓、角、分、零、整(正)」。
「柒」在當時作為「漆」和「桼」的異體字,後來出現分化,將「柒」定為數字「柒」的大寫,「桼」並入「漆」定為「刷」的意思。
現代社會的今天,銀行票證、流動支票、實用發票、合同協議、賬目單據等各類經濟文本必須標明大寫數字,已經成為了「約定俗成」的規則,而且隨著高科技的發展,金融機構又開發應用了電子支付密碼、指紋智能驗證、特定身份識別等更為復雜的防偽技術,從而進一步增強了國家財產和私人資金的保密性與安全性。
(2)壹叄源碼擴展閱讀:
明朝初年,一起涉及12名高官,6個部的左右侍郎的重大「郭桓貪污案」,就是利用空白賬冊大做假賬,通過篡改數字大肆侵吞錢糧,累計高達2400多萬石(dàn),這個數字幾乎和當時全國秋糧實征總數相當。
朱元璋對此大為震怒,下令將郭桓等同案犯幾萬人斬首示眾,同時制定了懲治經濟犯罪的嚴格法令,並在財務管理上進行技術防範——把漢字中的數字改為了難以塗改的大寫,
即:「一二三四五六七八九十百千」改為「壹貳叄肆伍陸柒捌玖拾佰阡」等(「阡」後來改為單人旁的「仟」),被稱之為中國歷史上金額數字大寫的首創。
③ 高分求用VB做個小程序 求源碼
幫你寫了個宏,執行時,完全滿足你的要求。
第三次改了一下,還有什麼問題,歡迎提出:
SubZh()
DimS,iAsInteger,K(),EAsString,SwAsInteger,UAsString
d=Array("零","壹","貳","叄","肆","伍","陸","柒","捌","玖")
w=Array("","萬","億")
R=Range("A1").Value
IfInStr(R,".")<>0Then
U=Right(R,Len(R)-InStr(R,"."))
DoWhileLen(U)>2
U=CStr((Val(U)+5)10)
Loop
R=Int(R)
EndIf
IfNotIsNumeric(R)ThenExitSub
i=Len(Int(R))
i=i4
ReDimK(i)
Fori=UBound(K)ToLBound(K)+1Step-1
K(i)=Right(R,4)
E=T(K(i))+w(Sw)+E
Sw=Sw+1
R=Left(R,Len(R)-4)
Nexti
K(i)=R
IfK(i)<>""Then
E=T(K(i))+w(Sw)+E
EndIf
E=E+"元"
IfLen(U)=2Then
E=E+d(Val(Left(U,1)))+"角"+d(Val(Right(U,1)))+"分"
ElseIfLen(U)=1Then
E=E+d(Val(Left(U,1)))+"角"
Else
E=E+"整"
EndIf
Range("A2").Value=E
EndSub
FunctionT(A)AsString
d=Array("零","壹","貳","叄","肆","伍","陸","柒","捌","玖")
S=Array("","拾","百","千")
n=Len(A)
Fori=1Ton
T=d(Val(Mid(A,(n-i+1),1)))+S(i-1)+T
Nexti
EndFunction
④ 一二三的大寫
一、二、三大寫的寫法分別是:壹、貳、叄。
追溯大寫這種寫法的由來,主要是朱元璋因為當時的一件重大貪污案「郭桓案」而發布法令,其中明確要求記賬的數字進行整改。「一、二、三、四、五、六、七、八、九、十、百、千」整改為「壹、貳、叄、肆、伍、陸、柒、捌、玖、拾、佰、仟」等復雜的漢字,方法也一直沿用至今。
人民幣大寫的注意事項
1、中文大寫金額數字到「元」為止的,在「元」之後,應寫「整」(或「正」)字,在「角」之後,可以不寫寫「整」(或「正」)字。大寫金額數字有「分」的,「分」後面不寫「整」(或「正」)字。
2、中文大寫金額數字前應標明「人民幣」字樣,大寫金額數字有「分」的,「分」後面不寫「整」(或「正」)字。
⑤ 現在分銷系統怎麼樣
分銷系統是當前信息時代下新一代的企業數據營銷方式,幫助商家快速拓展線上分店並實現裂變式傳播的推廣效果,實現商家銷量的快速增長。微商分銷系統統的一個重要特點是分銷商店鋪無需囤貨。分銷商賣出的產品會由總部統一發出,分銷商無需管理,只需做好分銷和銷售產品即可。
要看微商分銷系統怎樣好不好,主要看它功能是不是很豐富,是否社交和電商一體的,是否有很完善的電銷體系
⑥ 提供一個JAVA程序,就是輸入阿拉伯數字運行讓他變成大寫的漢字,比如:123變成壹貳叄之類
import java.io.*;
public class Test1 {
/**
* @param args
*/
public static void main(String[] args) {
//數據字典!
char c[]={'零','壹','貳','叄','肆','伍','陸','柒','捌','玖'};
//等待輸入!
System.out.print("請輸入一個阿拉伯數字: ");
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
//得到輸入!
try {
String input=br.readLine();
for(int count=0;count<input.length();count++){
//轉成數字
char temp=input.charAt(count);
switch (temp){
case '1':System.out.print(c[1]);break;case '2':System.out.print(c[2]);break;
case '3':System.out.print(c[3]);break;case '4':System.out.print(c[4]);break;
case '5':System.out.print(c[5]);break;case '6':System.out.print(c[6]);break;
case '9':System.out.print(c[9]);break;case '8':System.out.print(c[8]);break;
case '0':System.out.print(c[0]);break;default:break;
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
⑦ 人民幣大寫金額從1到10怎麼寫呢
人民幣大寫金額從1到10分別是壹、貳、叄、肆、伍、陸、柒、捌、玖、拾。
大寫金額,即大寫數字,是東亞地區特有的數字書寫方式,利用與數字同音的漢字取代數字,以防止數目被塗改。據考證,大寫數字最早是由武則天發明,後經朱元璋改進完善。
(7)壹叄源碼擴展閱讀:
大寫規則
中文大寫金額數字前應標明"人民幣"字樣,大寫金額數字應緊接"人民幣"字樣填寫,不得留有空白。大寫金額數字前未印"人民幣"字樣的,應加填"人民幣"三字。在票據和結算憑證大寫金額欄內不得預印固定的"仟、佰、拾、萬、仟、佰、拾、元、角、分"字樣。
中文大寫金額數字到"元"為止的,在"元"之後,應寫"整"(或"正")字,在"角"之後,可以不寫"整"(或"正")字。大寫金額數字有"分"的,"分"後面不寫"整"(或"正")字。
⑧ 一二三繁體字怎麼寫
一二三沒有繁體字。只有大寫,為「壹、貳、叄 」。
壹:「一」的大寫。常用於支票、銀行票據等,以避免差錯或塗改。
壹的哲學本義指:專一純粹、專精。闡述一: 一者,謂專精也,用心一也,專於一境也。謂之不偏、不散、不雜、獨不變也,道之用也。
貳是一個漢字,讀作èr,本意是指副;也是「二」的大寫形式,用來計數和記賬; 還指變節,背叛。該文字在《周禮·乃酒正》和《禮記·曲禮》等文獻均有記載。
叄是三的大寫形式,一般用於錢財記賬方面,如叄佰元整。
(8)壹叄源碼擴展閱讀:
壹的解釋
1、同「一」(多用於壹生、壹圓等)
節以壹惠。——《禮記·表記》
君答壹拜。——《儀禮·士相見禮》
2、古書用字
一之與壹,二之與貳,三之與叄,其義皆同。——《容齋五筆》
3、表示數量、次數
如:壹再(一再。一次再次,再三);壹倡三嘆(謂一人歌唱,三人應和);壹尊(一尊。謂共尊立一帝);壹適(一度貢舉或推薦)
參考資料來源:網路-壹
參考資料來源:網路-貳
參考資料來源:網路-叄