java用for循环输出长方形

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java用for循环输出长方形相关的知识,希望对你有一定的参考价值。

以下是代码,但是一点运行就出现电脑cpu使用率100%,是不是死循环了?是定义的变量有问题还是其它错误,请教高手啊啊啊
public class Theer
public static void main(String[] args)

for(int a=1;a<=9;a+=2)
for(int b=9;b>a-1;a--)
System.out.print("");

for(int c=1;c<=a;c++)
System.out.print("*");

System.out.println();

for(int d=1;d<=7;d+=2)
for(int e=1;e<d+3;d++)
System.out.println();

for(int f=7;f>=d;f--)
System.out.println("*");

System.out.println();


我也是java新手 看了一下你的代码有两处错误for(int b=9;b>a-1;a--) 迭代部分不应该是a--而应该是b--,是a--的话循环会因到不到结束条件而进入死循环,,下面的 for(int e=1;e<d+3;d++)也是同理应为e++.另外你下面的输出代码应该是print而不是println,for(int e=1;e<d+3;e++)后的输出应该是print("")追问

谢谢,但是我改了之后输出的前半部分是直角三角形,还木有输出长方形。

参考技术A for (int a = 1; a <= 9; a += 2)
for (int b = 9; b > a - 1; a--)
。。。。
第一层循环 a = 1, 进入第二层循环
int b = 9
b > a - 1 -- > 0 > 1 -1
a-- 而且是a--

那条件 b > a - 1 永远成立,所以死循环追问

谢谢、

本回答被提问者和网友采纳
参考技术B for(int b=9;b>a-1;a--)
System.out.print("");

这里就死循环了。。。
如果b>a-1,那么在a--之后,必然(更加)会是b>a-1追问

谢谢

在JAVA中怎么用循环写出一个空心的正方形?请加上注释!

正方形周长公式 边长*4;

参考技术A 跟周长有什么关系?

public static void main(String[] args)
int line = 5; // 正方形的总行数(5行5列)
for (int i = 1; i <= line; i++) // 控制行
for (int j = 1; j <= line; j++) // 控制列
if (i == 1 || i == line) // 如果是第一行或者是最后一行则打印星号
System.out.print("*");
else if (j == 1 || j == line) // 如果是第一列或者是最后一列则打印星号
System.out.print("*");
else
System.out.print(" "); // 如果不是第一行、最后一行、第一列、最后一列则打印空格


System.out.print("\n"); // 换行

本回答被提问者采纳

以上是关于java用for循环输出长方形的主要内容,如果未能解决你的问题,请参考以下文章

在JAVA中怎么用循环写出一个空心的正方形?请加上注释!

求java 输出正方形(用*号)的代码!

用java打印菱形。

在JAVA中用for循环编写程序计算1~100之间的奇数之和

java使用for循环输出图形 * *** ***** ******* ***** *** *

Java如何用for循环实现以下图形 * *** ***** ******* ***** *** *