我的代码的基本思想是让用户输入 0-9 的拼写,即零、一等或实际数字,并分别输出数字/拼写。
我设法通过使用while(cin >> number)
(数字是字符串变量)的while循环来做到这一点,然后使用if语句来选择适当的输出选项,即“零”--> 0和“0”-->零。
起初,尽管我尝试按以下方式进行操作;
while (cin >> number || cin >> n)
{
if (n == 0)
cout << digits[0] << endl;
.
.
.
else if (n == 9)
cout << digits[9] << endl;
if (number == digits[0])
cout << 0 << endl;
.
.
.
else if (number == digits[9])
cout << 9 << endl;
}
digits
只是一个存储字符串“零”、“一”等的向量类。
但这不起作用,当输入一个字符串时,输出是正确的,但是当输入一个整数时,输出总是“零”。我想知道为什么这不起作用?我认为它与while循环条件有关。计算机无法识别是否输入了字符串/整数并执行适当的操作?