// 數字轉羅馬字串
// vc2008通過
#include "stdafx.h"
#include // 數字轉羅馬字串
// 需要保證strdata空間足夠
// 範圍: 1~3999
void numbertostring(int nvalue, char* strdata)
; const char* s100[10] = ;
const char* s10[10] = ;
const char* s1[10] = ;
int d1000 = nvalue/1000;
int d100 = (nvalue % 1000)/100;
int d10 = (nvalue % 100)/10;
int d1 = nvalue % 10;
sprintf(strdata, "%s%s%s%s", s1000[d1000], s100[d100], s10[d10],s1[d1]);
}int _tmain(int argc, _tchar* argv)
; int nvalue = 999;
numbertostring(nvalue, strdata);
printf("%s = %d\n", strdata, nvalue);
return 0;
}
整數轉羅馬字元
羅馬數字包含以下七種字元 i,v,x,l,c,d和m。例如,羅馬數字 2 寫做ii,即為兩個並列的 1。12 寫做xii,即為x ii。27 寫做xxvii,即為xx v ii。通常情況下,羅馬數字中小的數字在大的數字的右邊。但也存在特例,例如 4 不寫做iiii,而是iv。數字 1 在數字 5 的...
字串 13 羅馬數字轉整數
一開始想的是,直接利用字串進行模擬,當遇到 i x c 時,判斷後面是不是為題目中的幾個字母 前提保證i 1 length 如果是的話,直接用後面的數字減去前面的數字,這樣的話,ifelse判斷比較多,不算是最佳的方案 最佳方案 我們用乙個hashmap來儲存他的對映,如下所示 key value ...
羅馬字元轉換成數字
羅馬數字包含以下七種字元 i,v,x,l,c,d 和 m。字元 數值 i 1v 5 x 10 l 50 c 100 d 500 m 1000 例如,羅馬數字 2 寫做 ii 即為兩個並列的 1。12 寫做 xii 即為 x ii 27 寫做 xxvii,即為 xx v ii 通常情況下,羅馬數字中小...