求教更好的解决这个问题

lucima 2007-11-11 12:02:21
我想实现一个打印出由‘*’ 组成的矩形程序。

代码如下


class hanshu {
public static void drawjuxing(int x,int y)
{
for(int i=1;i<=y;i++)
{
for(int j=1;j<=x;j++)
System.out.print('*');
System.out.println();
}
System.out.println();
}
public static void main(String[] args)
{
drawjuxing(3,2);
drawjuxing(4,6);
drawjuxing(5,7);
}
}



我想说的是,在最内层的循环嵌套,能不能由一个System.out.println()来实现。

我开始试过了,打印结果都是一个* 一行。

不知道哪位大侠能做到。
...全文
59 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
网络咖啡 2007-11-11
  • 打赏
  • 举报
回复
不能
lucima 2007-11-11
  • 打赏
  • 举报
回复
我的意思不一定要x《y,而是就是用一个输出命令就完成两个任务的意思。
lucima 2007-11-11
  • 打赏
  • 举报
回复
呵呵,还是三楼写的好。
lucima 2007-11-11
  • 打赏
  • 举报
回复
我试出来了这个代码也可以。



class hanshu {
public static void drawjuxing(int x,int y)
{
for(int i=1;i<=y;i++)
{
for(int j=1;j<=x;j++)
{ System.out.print('*');}
System.out.println();
}

}
public static void main(String[] args)
{
drawjuxing(3,2);
drawjuxing(4,6);
drawjuxing(5,7);
}
}
lucima 2007-11-11
  • 打赏
  • 举报
回复
System.out.print(j <x ? "* " : "*\n ");

这句怎么会是没有明白。

请讲讲被
cursor_wang 2007-11-11
  • 打赏
  • 举报
回复
3楼的写得确实不错,就是应该把\n后的空格去掉,可能是疏忽了.
lihaifeng0412 2007-11-11
  • 打赏
  • 举报
回复
好像正确
huoyin 2007-11-11
  • 打赏
  • 举报
回复
这个是不是你想要的:

class hanshu {
public static void drawjuxing(int x, int y) {
for (int i = 1; i <= y; i++) {
for (int j = 1; j <= x; j++)
System.out.print(j<x ? "*" : "*\n");
}
System.out.println();
}

public static void main(String[] args) {
drawjuxing(3, 2);
drawjuxing(4, 6);
drawjuxing(5, 7);
}
}
lucima 2007-11-11
  • 打赏
  • 举报
回复
我好像看见有人做到了

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧