public class Var_02 {
public static void main(String args[]){
for(int i=1;i<=7;i+=2){
for(int kong=7;kong>i-1;kong--){
System.out.print(" ");
}
for(int xing=1;xing<=i;xing++){
System.out.print("* ");
}
System.out.println();
}
for(int j=1;j<=5;j+=2){
for(int kong1=1;kong1
System.out.print(" ");
}
for(int xing1=5;xing1>=j;xing1--){
System.out.print("* ");
}
System.out.println();
}
}
}
上面程序是一个画菱形的程序,求高手给解决下做这样的程序的思路!~~~ 希望能把每步为何要这样做解释清楚。
求解用for语句解决画简单图形思路~~~
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- chengxing6666 2009-02-04 16:24关注
估计是一个新人,想想最开始学习时,也有类似的学习情况,就顺便说一下吧,不知是不是你想要的:
public class Var_02 {
public static void main(String args[]) {
//这是打上面4行的循环
for (int i = 1; i <= 7; i += 2) {//这个循环的条件是为了每增加一行控制*的递增的个数(2)和行数(4行)
for (int kong = 7; kong > i - 1; kong--) {//这个循环的条件是为了打多少个空格后再开始打*
System.out.print(" ");
}
for (int xing = 1; xing <= i; xing++) {//这个循环的条件是为了打多少个*
System.out.print("* ");
}
System.out.println();//这个为了每打一行后空一行隔开
}
//这是打下面3行的循环
for (int j = 1; j <= 5; j += 2) {//这个循环的条件是为了每增加一行控制*的递减的个数(2)和行数(3行)
for (int kong1 = 1; kong1 < j + 3; kong1++) {//这个循环的条件是为了打多少个空格后再开始打*
System.out.print(" ");
}
for (int xing1 = 5; xing1 >= j; xing1--) {//这个循环的条件是为了打多少个*
System.out.print("* ");
}
System.out.println();//这个为了每打一行后空一行隔开
}
}
}本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 程序不包含适用于入口点的静态Main方法
- ¥15 素材场景中光线烘焙后灯光失效
- ¥15 请教一下各位,为什么我这个没有实现模拟点击
- ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
- ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
- ¥20 有关区间dp的问题求解
- ¥15 多电路系统共用电源的串扰问题
- ¥15 slam rangenet++配置
- ¥15 有没有研究水声通信方面的帮我改俩matlab代码
- ¥15 ubuntu子系统密码忘记