在显示星星的直方图中需要帮助
Need help in histogram displaying the stars
我需要帮助显示每个 cat1 到 cat4 的星星。我遇到的问题是,当您 运行 代码时,星星显示在 cat1 到 cat4 的下方。我想让星星显示在每只猫的身边。
我的编码输出是:
读入一个标记
21
输入下一个学生分数
2
输入下一个学生分数
30
输入下一个学生分数
31
输入下一个学生分数
40
输入下一个学生分数
41
输入下一个学生分数
70
输入下一个学生分数
71
输入下一个学生分数
109 = 当此人输入超过 100 的数字时,while 循环结束。
总得分 8
0-29: 2
*
*
30-39: 2
*
*
40-69: 2
*
*
70-100: 2
*
*
我希望编码看起来像什么:
0-29:
*
*
30-39:
*
*
40-69:
*
*
70-100:
*
*
int cat1 = 0;
int cat2 = 0;
int cat3 = 0;
int cat4 = 0;
int mark;
int counter = 0;
Scanner input = new Scanner(System.in);
System.out.println("Read in a mark");
mark = input.nextInt();
while (mark <= 100 && mark >= 0) {
counter++;
if (mark >= 0 && mark <= 29) {
cat1++;
}
if (mark >= 30 && mark <= 39) {
cat2++;
}
if (mark >= 40 && mark <= 69) {
cat3++;
}
if (mark >= 70 && mark <= 100) {
cat4++;
}
System.out.println("Enter the next student mark");
mark = input.nextInt();
}
System.out.println("Total number of marks entered " + counter);
System.out.print("");
System.out.println("0-29: " + cat1);
for (int i = 0; i < cat1; i++) {
System.out.println("*");
}
System.out.print("");
System.out.println("30-39: " + cat2);
for (int i = 0; i < cat2; i++) {
System.out.println("*");
}
System.out.print("");
System.out.println("40-69: " + cat3);
for (int i = 0; i < cat3; i++) {
System.out.println("*");
}
System.out.print("");
System.out.println("70-100: " + cat4);
for (int i = 0; i < cat4; i++) {
System.out.println("*");
}
这样试试..
String star = "";
for (int i = 0; i < cat1; i++) {
star = star +"*";
}
System.out.println("0-29: " + star);
您应该将 System.out.println
更改为 System.out.print
并在每个循环后的末尾添加一个 System.out.println();
System.out.print("");
System.out.print("0-29: " + cat1);
for (int i = 0; i < cat1; i++) {
System.out.print("*");
}
System.out.println();
System.out.print("");
System.out.print("30-39: " + cat2);
for (int i = 0; i < cat2; i++) {
System.out.print("*");
}
System.out.println();
System.out.print("");
System.out.print("40-69: " + cat3);
for (int i = 0; i < cat3; i++) {
System.out.print("*");
}
System.out.println();
System.out.print("");
System.out.print("70-100: " + cat4);
for (int i = 0; i < cat4; i++) {
System.out.print("*");
}
System.out.println();
可能你还应该在需要的地方添加一些空格
我需要帮助显示每个 cat1 到 cat4 的星星。我遇到的问题是,当您 运行 代码时,星星显示在 cat1 到 cat4 的下方。我想让星星显示在每只猫的身边。
我的编码输出是:
读入一个标记 21
输入下一个学生分数 2
输入下一个学生分数 30
输入下一个学生分数 31
输入下一个学生分数 40
输入下一个学生分数 41
输入下一个学生分数 70
输入下一个学生分数 71
输入下一个学生分数 109 = 当此人输入超过 100 的数字时,while 循环结束。
总得分 8
0-29: 2
*
*
30-39: 2
*
*
40-69: 2
*
*
70-100: 2
*
*
我希望编码看起来像什么: 0-29: * *
30-39: * *
40-69: * *
70-100: * *
int cat1 = 0;
int cat2 = 0;
int cat3 = 0;
int cat4 = 0;
int mark;
int counter = 0;
Scanner input = new Scanner(System.in);
System.out.println("Read in a mark");
mark = input.nextInt();
while (mark <= 100 && mark >= 0) {
counter++;
if (mark >= 0 && mark <= 29) {
cat1++;
}
if (mark >= 30 && mark <= 39) {
cat2++;
}
if (mark >= 40 && mark <= 69) {
cat3++;
}
if (mark >= 70 && mark <= 100) {
cat4++;
}
System.out.println("Enter the next student mark");
mark = input.nextInt();
}
System.out.println("Total number of marks entered " + counter);
System.out.print("");
System.out.println("0-29: " + cat1);
for (int i = 0; i < cat1; i++) {
System.out.println("*");
}
System.out.print("");
System.out.println("30-39: " + cat2);
for (int i = 0; i < cat2; i++) {
System.out.println("*");
}
System.out.print("");
System.out.println("40-69: " + cat3);
for (int i = 0; i < cat3; i++) {
System.out.println("*");
}
System.out.print("");
System.out.println("70-100: " + cat4);
for (int i = 0; i < cat4; i++) {
System.out.println("*");
}
这样试试..
String star = "";
for (int i = 0; i < cat1; i++) {
star = star +"*";
}
System.out.println("0-29: " + star);
您应该将 System.out.println
更改为 System.out.print
并在每个循环后的末尾添加一个 System.out.println();
System.out.print("");
System.out.print("0-29: " + cat1);
for (int i = 0; i < cat1; i++) {
System.out.print("*");
}
System.out.println();
System.out.print("");
System.out.print("30-39: " + cat2);
for (int i = 0; i < cat2; i++) {
System.out.print("*");
}
System.out.println();
System.out.print("");
System.out.print("40-69: " + cat3);
for (int i = 0; i < cat3; i++) {
System.out.print("*");
}
System.out.println();
System.out.print("");
System.out.print("70-100: " + cat4);
for (int i = 0; i < cat4; i++) {
System.out.print("*");
}
System.out.println();
可能你还应该在需要的地方添加一些空格