两位数字

时间:2012-11-12 21:49:37

标签: visual-c++

我需要一个带两位数字的程序,如“22”并返回“Twenty Two”。我为main方法启动了以下内容,但对字符串方法没有任何内容

        static string TwoDigit(int n)
    {

    }
    static void Main(string[] args)
    {
        for (int i = 0; i <= 19; i++)
            Console.WriteLine("{0}: {1}", i, TwoDigit(i));
        for (int i = 20; i <= 110; i += 7)
            Console.WriteLine("{0}: {1}", i, TwoDigit(i));
    }

4 个答案:

答案 0 :(得分:2)

我不知道现有的程序,但写这个功能会很容易 我会将int转换为字符串,然后对每个字符执行switch语句 第一个开关将处理“Twenty”,“Thirty”等。
第二个开关可以处理一个,两个,三个等 你需要为青少年设一个特殊的案例,只为每个人吐出一个字。

答案 1 :(得分:0)

花点时间研究一下。如果你不知道怎么做,我建议用一个数字解析int数,然后通过case格式化文本。

switch (int)
case 1:
cout << "one";
switch (int)
case 2:
cout << "two";

答案 2 :(得分:0)

最简单的方法是分别评估两个数字,并将它们与存储在两个数组中的字符串值进行匹配。

例如,你可能有这两个数组......

tens[0] = ""
tens[1] = ""
tens[2] = "Twenty"
tens[3] = "Thirty"
tens[4] = "Forty"
tens[5] = "Fifty"
tens[6] = "Sixty"

等...

ones[0] = ""
ones[1] = "One"
ones[2] = "Two"
ones[3] = "Three"

等...

然后,如果数字> = 20,您可以简单地取第一个数字并将其用作数字数组的索引,然后使用它作为您的数组的索引。如果数字在10到19之间,你需要一些特殊的逻辑来处理它。

答案 3 :(得分:0)

  1. 初始化此功能

    function Ones_String(number1) {
    
        if (number1 == 1) {
            string1 = "One";
        } elseif (number2 == 9) {
            string1 = "Nine";
        } elseif (number2 == 10) {
            string1 = "Ten";
        } elseif (number2 == 0)  {
            string1 = "Zero";
        } else {
            string1 = ""; // empty value
        }
    
        return string1;
    }
    
    
    function Tens_String(number2) {
    
        if (number2 == 2) {
            string2 = "Twenty";
        } elseif (number2 == 3) {
            string2 = "Thirty";
        } elseif (number2 == 9) {
            string2 = "Ninety";
        } else {
            string2 = ""; // emtpy value
    
        }
        return string2;
    }
    
    
    
    function teens_string(number3) {
    
        if (number3 == 11) {
            string3 = "Eleven";
        } elseif (number3 == 12) {
            string3 = "Tweleve";
        } else {
            string3 = "Nineteen";
        }
    
        return string3;
    }
    
  2. 如果给定数字&lt; 11然后拨打Ones_string()

    如果数字> = 11,则执行以下逻辑

    1. 首先:获取秒数位值并致电Tens_String();

    2. 第二:获取第一位数字,并致电Ones_string();

    3. 此算法适用于99 ..最后一次于2006年在C ++学院使用..

      无论我提到的是要检测的算法/逻辑......而不是完美的代码