在java中解决这段代码时面临循环中的问题
facing problem in loop while solving this code in java
我在java中使用while循环时遇到问题。我做了很多功课。但不能解决它。专门使用和运算符、递减运算符。
事实上,我想用java做同样的代码。但是在java中,我不能在这些条件下使用while循环。
int dataSet;
scanf ("%d", &dataSet);
while ( dataSet-- ) {
char a;
int result = 0;
while ( scanf ("%c", &a) && a != 'X' ) {
result += function (a);
}
printf ("%dn", result);
}
return 0;
您可以使用while ( dataSet-- > 0 )
您应该只在条件中使用布尔值。
我正在编辑我的答案。看起来您指向代码的内部while循环。
新建编辑:您无法在Java中实现纯粹的scanf功能。读取可以通过Run Arguments,也可以通过File。
因此,您可以将所需的字符放入某个文件中,然后逐个读取这些字符。我会和你分享一个类似的剪报。希望能有所帮助!
Scanner sc = new Scanner(new File("input.txt")); // to read file
int dataSet = 10;
while(dataSet-- >0) {
String a=""; // using String here for storing letters
int result = 0;
while(!a.equals("X")) {
a = sc.next();
result += function(a);
}
System.out.println(result);
}
旧编辑:如果而条件正在困扰您
试试这个"=="操作员
Java不将0理解为false
while ( dataSet-- != 0 )
这是代码。。。
converter1 c1=new converter1();
Scanner s1 = new Scanner(System.in);
int data;
data=s1.nextInt();
while(data-- != 0){
char a=0;
int sum=0;
do {
a = s1.next().charAt(0);
sum += c1.function(a);
} while( a != 'X');
System.out.println(sum);
但对于输出和输入,需要字符之间的空格像这样。。。。(A B C X(。。。
没有这样的空间。。。。(ABCX(它没有给出输出。
为了避免输入中出现空格,您可以读取整个输入,然后进一步解析以获取单个输入
Scanner sc = new Scanner(System.in);
String inputCollective = sc.next();
char[] inputArray = inputCollective.toCharArray();
for (char ch: inputArray) {
int number = Integer.parseInt(ch+"");
System.out.println(number);
}
PS:代码看起来是修复类型。。但如果它有帮助,那就太好了:(
相关文章:
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 在java中解决这段代码时面临循环中的问题
- 当调用switch语句中的函数时(即使函数不包含循环),似乎是永不结束的循环的问题
- 在 for 循环中查找问题时遇到困难
- 嵌套for循环C++的问题(初学者)
- 退出简单while循环时出现问题
- 循环无限运行C++解决骑士之旅问题
- Visual Studio 2017循环自动向量化问题
- 我试图制作一个程序,要求用户输入问题和答案,但程序循环不正确
- 嵌套While循环不起作用(C++问题)
- 使用 GMP 的 while 循环出现问题
- 遇到此问题时遇到困难:允许用户输入数组的值并使用 for,而循环也输出输入的最大数字
- OpenMP for 循环并行性问题
- 这个返回元素位置的基于循环的函数有什么问题?
- 为什么循环会导致指针出现问题?
- 使用基于范围的循环迭代矢量时出现问题
- 在 c++ 中循环遍历数组时遇到问题
- 运行无限循环的最小二叉树问题
- 在C++中循环访问自定义结构列表的小问题
- 在 for 循环中更新两个变量时遇到问题C++