/**
 * 千克与磅之间的转换。
 * 1千克为2.2磅。
 * 并排显示下列两个表格。
 * ——————————————————————————————
 * | 千克   磅     磅    千克   |
 * | 1     2.2    20     9.09  |
 * | 3     6.6    25     11.36 |
 * | ...                       |
 * | 197   433.4  510    231.82|
 * | 199   437.8  515    243.09|
 * |—————————————————————————————
 */
package Test;public class T45 {
public static void main(String[] args) {
double kilograms;
double pounds;
System.out.println("千克                                  磅                                  磅                                  千克");


for (int i = 1; i < 200; i++){
pounds = i * 2.2;
if (i % 2 == 1){
System.out.printf("%-3d%12.1f", i, pounds);
System.out.println();
}
}
/**
 * 程序显示下列表格:
 * ————————————————
 * | 千克   磅    |
 * | 1      2.2   | 
 * | 3      6.6   | 
 * | ...          |
 * | 197    433.4 |
 * | 199    437.8 |
 * ————————————————
 */

// for (double j = 20; j < 516; j++){
// kilograms = j / 2.2;
// if (j % 5 == 0){
// System.out.printf("%-3d%12.2f", (int)j, kilograms);
// System.out.println();
// }
// }
/**
 * 程序显示下列表格:
 * —————————————————
 * | 磅     千克   |
 * | 20     9.09   | 
 * | 25     11.36  | 
 * | ...           |
 * | 510    231.82 |
 * | 515    243.09 |
 * ————————————————
 */


/**
 * 不知如何组合到一起,求助。
 */
// for (int i = 1; i < 200; i++){
// for (double j = 20; j < 516; j++){
// while (i % 2 == 1 && j % 5 == 0){
// pounds = (double)i * 2.2;
// kilograms = j / 2.2;
// System.out.printf("%-3d%12.1f%-12d%12.2f", i, pounds, (int)j, kilograms);
// System.out.println();
// }
// }
// }

}
}

解决方案 »

  1.   

    public static void main(String args[]) {
    double kilograms;
            double pounds;
            System.out.println("千克                            磅                                磅                                千克");
            double pound =20;
             
            for (int i = 1; i < 200; i=i+2){
            
                pounds = i * 2.2;
                
                kilograms = pound / 2.2;
                    System.out.printf("%-3d%12.1f", i, pounds,(int)pound);
                    System.out.print("        ");
                    System.out.printf("%-3d%12.2f", (int)pound, kilograms);
                    System.out.println();
                    pound = pound +5;
            }
    }
      

  2.   

    谢谢,问题解决。
    public class T45 {
    public static void main(String[] args) {
    double kilograms;
            double pounds;
            System.out.println("千克                            磅                                磅                                千克");
            double pound =20;
             
            for (int i = 1; i < 200; i=i+2){
                pounds = i * 2.2;
                kilograms = pound / 2.2;
                    System.out.printf("%-3d%12.1f", i, pounds,(int)pound);
                    System.out.print("        ");
                    System.out.printf("%-3d%12.2f", (int)pound, kilograms);
                    System.out.println();
                    pound = pound +5;
            }
    }
    }
      

  3.   

    public class T45 {
    public static void main(String[] args) {
    double kilograms;
    double pounds;

    System.out.println("千克\t磅\t磅\t千克");//对这里进行修改,不使用空格使用制表符 int temp = 19;//不能等于20,不然内嵌for循环输出不了第一次的20磅
    for (int i = 1; i < 200; i++) {
    pounds = i * 2.2;
    if (i % 2 == 1) {

    System.out.printf("%d\t%.1f\t",i,pounds);
    for (double j = temp; j < 516; j++) {
    kilograms = j / 2.2;
    if (j % 5 == 0 && (int) j != temp) {
    System.out.printf("%d\t%.2f",(int)j,kilograms);
    temp = (int) j;//记录j下次从哪里开始
    break;
    }
    } System.out.println();
    }
    }
    }
    }不好意思,这是我写的代码,虽然复杂了点,但是也能实现你说的功能,楼上的比我写的好,我是个新手,写的不好大家谅解,我发上来是为了给大家分享一下我的 思路!谢谢