我需要一个带两位数字的程序,如“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));
}
答案 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)
初始化此功能
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;
}
如果给定数字&lt; 11然后拨打Ones_string()
如果数字> = 11,则执行以下逻辑
首先:获取秒数位值并致电Tens_String();
第二:获取第一位数字,并致电Ones_string();
此算法适用于99 ..最后一次于2006年在C ++学院使用..
无论我提到的是要检测的算法/逻辑......而不是完美的代码