繁体   English   中英

在Java中使用for循环

[英]use of for-loops in Java

我坚持做作业(我是一个完整的初学者),其中输出应该是一个带有对角线的正方形(由星星组成) ,其余部分由负号组成。 正方形的边由用户输入确定,该输入应为odd number >=1odd number >=1 (此处使用扫描仪)。

仅应使用for loopsif语句。

用我的代码,我只能设法得到一个对角线。 我究竟做错了什么?

    Scanner sc = new Scanner(System.in); 
    int laenge=0;
    do {
    System.out.printf(": ");
    laenge =sc.nextInt(); 
    }while(laenge%2 == 0);


    for(int i=1;i<=laenge;i++){
        for (int j=1; j<=laenge; j++) {
            if (i==j)
                System.out.print("*");
            else
                System.out.print("-");
        }
        for (int j=laenge;j<=1; j--) {
            if (i==j)
                System.out.print("*");
            else
                System.out.print("-");
        }

        System.out.println();
        }       

    sc.close();
   for(int i=1;i<=laenge;i++){

        for (int j=1; j<=laenge; j++) {

            if (i==j||(i+j)==(laenge+1))
                System.out.print("*");
            else
                System.out.print("-");
        }

您只需要这样做。 对于第一个对角线(i == j),对于第二个诊断,i&j的总和等于(laenge + 1)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM