06-系统操作/数字大小写转换器/numberConvert/Form1.cs

(开头部分) 4KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace numberConvert
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public static string CNumToCh(string x)
        {
            //数字转换为中文后的数组 
            string[] num = new string[] { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" };
            //为数字位数建立一个位数组 
            string[] digit = new string[] { "", "拾", "佰", "仟" };
            //为数字单位建立一个单位数组 
            string[] units = new string[] { "", ",万,", ",亿,", ",万亿," };
            string returnValue = ""; //返回值 
            int finger = 0; //字符位置指针 
            int m = x.Length % 4; //取模 
            int k = 0;
            if (m > 0)
                k=x.Length / 4 + 1;
            else
                k=x.Length / 4;
            //外层循环,四位一组,每组最后加上单位: ",万亿,",",亿,",",万," 
            for (int i = k; i > 0; i--)
            {
                int L = 4;
                if (i == k && m != 0)
                    L = m;
                //得到一组四位数 
                string four = x.Substring(finger, L);
                int l = four.Length;
                //内层循环在该组中的每一位数上循环  
                for (int j = 0; j < l; j++)
                {
                    //处理组中的每一位数加上所在的位 
                    int n = Convert.ToInt32(four.Substring(j, 1));
                    if (n == 0)
                    {
                        if (j < l - 1&& Convert.ToInt32(four.Substring(j + 1, 1)) > 0 && !returnValue.EndsWith(num[n]))
                            returnValue += num[n];
                    }
                    else
                    {
                        if (!(n == 1 && (returnValue.EndsWith(num[0]) | returnValue.Length == 0) && j == l - 2))
                            returnValue += num[n];
                        returnValue += digit[l - j - 1];
                    }
                }
                finger += L;
后面还有 53 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读 AI

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。