大哥大姐进来帮下小弟,我的输出出什么问题了??(小弟新人)
本题是ACM中的1002的其中一部分,这部分就是将形如 310-GINO 中的字母转为数字,但是发现当主函数为
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String input = in.next();
System.out.println(ChangeString(input));
}
此时和预想的结果一致,但是加个输入控制次数的N值,却发现根本没有调用到函数,第二个主函数如下:
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
for(int i = 0 ; i < n ; i++)
{
String input = in.next();
System.out.println(ChangeString(input));
}
}
哪位大哥大姐帮小弟一下 ,小弟在这先谢谢各位了
整个测试源代码如下:
import java.util.*;
public class Acm1001 {
/**
* @param args
*/
public static String ChangeString(String k) {
String decoded = " ";
char []origin = k.toCharArray();
for (int i = 0; i < origin.length; i++) {
switch (origin[i]) {
case '- ':
decoded += '- ';
break;
case 'A ': case 'B ': case 'C ': case '2 ':
decoded += '2 ';
break;
case 'D ': case 'E ': case 'F ': case '3 ':
decoded += '3 ';
break;
case 'G ': case 'H ': case 'I ': case '4 ':
decoded += '4 ';
break;
case 'J ': case 'K ': case 'L ': case '5 ':
decoded += '5 ';
break;
case 'M ': case 'N ': case 'O ': case '6 ':
decoded += '6 ';
break;
case 'P ': case 'R ': case 'S ': case '7 ':
decoded += '7 ';
break;
case 'T ': case 'U ': case 'V ': case '8 ':
decoded += '8 ';
break;
case 'W ': case 'X ': case 'Y ': case '9 ':
decoded += '9 ';
break;
case '1 ': case '0 ':
decoded += origin[i];
break;
}
}
return decoded;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
for(int i = 0 ; i < n ; i++)
{
String input = in.next();
System.out.println(ChangeString(input));
}
}
}
[解决办法]
加个输入控制次数的N值,却发现根本没有调用到函数
这句话是什么意思?程序执行后的输出结果是什么?