<分区>
对于我的 C++ 类(class),我必须编写一个程序,该程序从用户那里获取一个包含字母的电话号码(例如 1-800-GOFEDEX),并返回该电话号码以及他们应该调用的实际号码。我在 for 循环中有我的转换逻辑:
for (int i = 0; i <= 7; i++) {
switch (letters[i]){
case 'A':
case 'B':
case 'C':
decodedNumber[i] = '2';
continue;
case 'D':
case 'E':
case 'F':
decodedNumber[i] = '3';
continue;
case 'G':
case 'H':
case 'I':
decodedNumber[i] = '4';
continue;
case 'J':
case 'K':
case 'L':
decodedNumber[i] = '5';
continue;
case 'M':
case 'N':
case 'O':
decodedNumber[i] = '6';
continue;
case 'P':
case 'Q':
case 'R':
case 'S':
decodedNumber[i] = '7';
continue;
case 'T':
case 'U':
case 'V':
decodedNumber[i] = '8';
continue;
case 'W':
case 'X':
case 'Y':
case 'Z':
decodedNumber[i] = '9';
continue;
//the default will simply copy it over (in case there is a number mixed with the letters)
default:
decodedNumber[i] = i;
continue;
}
} //End of for loop
它编译得很好,但是当我运行它时,它会循环一次然后给我这个错误:
我知道它至少经历了一次循环,因为您可以在这张图片中的 decodedNumber
变量的第一个位置看到数字 4:
我已经尝试在 switch 语句的所有情况下将 i
更改为 i+1
,但这也不起作用。
非常感谢任何帮助!!!