0

これは、形式/整頓のためです。私が知っているすべてのバックラッシュ t (\t) は、うまく機能していないようです。これが私のコードです:

import java.util.Scanner;

public class RegisterStudent {

public static void register() {
    System.out.println("----------------------------------------");
    System.out.println("Student Class Card Evaluation System");
    System.out.println("----------------------------------------");

    System.out.println("Personal Data");
    Scanner input = new Scanner(System.in);
    System.out.print("\tEnter student no.: ");
    long studNo = input.nextLong();
    System.out.print("\tEnter first name: ");
    String fName = input.next();
    System.out.print("\tEnter last name: ");
    String lName = input.next();
    System.out.print("\tEnter course: ");
    String course = input.next();
    System.out.println();

    System.out.println("----------------------------------------");
    System.out.println("Subject: Computer Programming 2");
    System.out.println("----------------------------------------");
    System.out.println();
    System.out.print("\tPrelim Grade: ");
    double pg = input.nextDouble();
    System.out.print("\tMidterm Grade: ");
    double mg = input.nextDouble();
    System.out.print("\tPrefinal Grade: ");
    double pfg = input.nextDouble();
    System.out.print("\tFinal Grade: ");
    double fg = input.nextDouble();
    System.out.println();
    System.out.println("----------------------------------------");

    double gwa = (pg + mg + pfg + fg)/4;    

    System.out.println();
    System.out.println("Student Evaluated successfully...");
    System.out.println("Viewing Report...");
    System.out.println();
    System.out.println("--------------------------------------------------------------------------------------------");
    System.out.println("ID No.\t\t" + "LASTNAME\t\t" + "FIRSTNAME\t\t" + "COURSE\t\t"
        + "PG\t\t" + "MG\t\t" + "PFG\t\t" + "FG\t\t" + "GWA");
    System.out.println("--------------------------------------------------------------------------------------------");

    System.out.println(studNo + "\t\t" + lName + "\t\t" + fName + "\t\t" + course + "\t\t"
        + pg + "\t\t" + mg + "\t\t" + pfg + "\t\t" + fg + "\t\t" + gwa);

出力は次のようになります。 出力

ユーザーが入力するものはすべて、適切に配置する必要があります。私のプログラムを修正するのを手伝ってください、ありがとう!


私の現在の出力は次のとおり です。画像 適切に配置されていないことがわかります

4

2 に答える 2

6

これは宿題なので、いくつかのヒントを次に示します。

  • またはクラスのprintfメソッドは位置合わせを行うことができます。クラスもそうです。PrintWriterPrintStreamString.formatFormatter

  • '\t'配置を移植可能にしたい場合は、単純なテキスト出力の配置にTAB 文字 (つまり ) を使用しないでください。OS ごとに、TAB の「幅」に関する考え方が異なります。

于 2013-01-19T10:11:16.703 に答える
0

入力の各行に必要なタブの数は、その行の最初に表示されるプロンプトテキストの長さによって決まります。つまり、プロンプトが短いほど、より多くのタブが必要になります。簡単な試行錯誤で出力を整理して、必要な結果を得ることができます。

于 2013-01-19T10:15:35.720 に答える