數字轉羅馬字串

2021-06-13 18:55:31 字數 716 閱讀 5368

// 數字轉羅馬字串

// 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 通常情況下,羅馬數字中小...