相关疑难解决方法(0)

将整数转换为罗马数字

我正在尝试编写一个将数字转换为罗马数字的函数.到目前为止这是我的代码; 但是,它仅适用于小于400的数字.是否有一种快速简便的方法来执行此转换,或扩展现有代码以便处理所有情况?在此先感谢您的帮助.

static string convertroman(int number)
    {
        int l = number / 10;
        StringBuilder sb = new StringBuilder();
        for (int m = 0; m <= l; m++)
        {
            if (l == 0)
            {
                break;
            }
            if (l == 5)
            {
                sb = sb.Append(ro.L.ToString());
                break;
            }
            if (l == 4)
            {
                sb = sb.Append(ro.X.ToString()).Append(ro.L.ToString());
                break;
            }
            if (l == 9)
            {
                sb = sb.Append(ro.X.ToString()).Append(ro.C.ToString());
                break;
            }
            if (l == 10)
            {
                sb = sb.Append(ro.C.ToString());
                break;
            }

            if (l > 5 && …
Run Code Online (Sandbox Code Playgroud)

c# c#-3.0 roman-numerals

54
推荐指数
9
解决办法
6万
查看次数

格式化功能,如果数字为零,则显示自定义字符

我正在使用格式函数(http://msdn.microsoft.com/en-us/library/59bz1f0h%28v=vs.90%29.aspx)来格式化我的输出.目前我使用这种格式字符串:

 TestStr1 = Format(5459.4, "##,##0.00")
 TestStr2 = Format(0.4, "##,##0.00")
 TestStr3 = Format(0.0, "##,##0.00")
Run Code Online (Sandbox Code Playgroud)

上面的代码将分别返回"5,459.40","0.4"和"0.00".现在,如果该值等于零,我想显示" - ".如何在不使用if-else语句的情况下实现输出,只需格式化函数?

编辑:

除了Pranay的文章,我发现了一篇来自微软的文章,它位于底部.http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

c# vb.net asp.net formatting

2
推荐指数
1
解决办法
354
查看次数

标签 统计

c# ×2

asp.net ×1

c#-3.0 ×1

formatting ×1

roman-numerals ×1

vb.net ×1