java 循环打印出等腰三角形

代码:publicclassT{publicstaticvoidmain(String[]args){inti=1;for(intk=1;kfor(intm=0;mSys... 代码: public class T { public static void main(String[] args) { int i = 1; for(int k = 1;k for(int m = 0;m System.out.print(" "); for(int j = 0; j if(i>=10) i=0; System.out.print("*"); i++; } System.out.println(); } } } 结果:
哪位高手能分析下?普通的循环能理解,这个。挺复杂的。还有,如果以后比这个更复杂的图形应该要怎么写?有什么诀窍吗?
展开
 我来答
学好好java
2011-10-24
知道答主
回答量:15
采纳率:0%
帮助的人:2.5万
展开全部
第一个for循环控制行数,共有五行。第二个for循环输出左边空格。第三个for循环输出*状的等腰三角形。你可以这样理解:整个输出的东西共包括两大部分:左半部分的空格和右半部分的*状等腰三角形,分别由两for循环和输出语句,而第一个for语句是控制整个的行数。。不知这样你是否能理解
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chy305
2011-10-16 · TA获得超过125个赞
知道答主
回答量:65
采纳率:0%
帮助的人:63万
展开全部
这是一个二重循环,在最外围的循环,控制行数,即K那个循环
在K的循环里,有两个循环,第一个循环(即M那个循环)根据行数循环输出空格
第二个(即J那个循环)循环控制输出的*号数量
追问
这些都知道哦,主要是 
for(int j = 0; j =10)
i=0;
System.out.print("*");
i++;
这些不懂
追答
i变量在这里都没有用上,可以不理会。k是行数,2*k-1就是每行的输出的*数
k=1时,输出的*数量就是2*k-1=1
k=2时,输出的*数量就是2*k-1=3
。。。。。。。。。。。。。
这样就刚好是等腰三角形了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tanxiaof3
2011-10-24 · 超过10用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:30.4万
展开全部
像这种二重循环都是外层循环控制行数,内层的话就是根据*号的个数与外层I的关系式来计算。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友fff3ffc
2011-11-03 · TA获得超过574个赞
知道小有建树答主
回答量:253
采纳率:100%
帮助的人:116万
展开全部
public class FileTest{
public static void main(String[] args){

int h=11;//层数
for(int i=1;i<=h;i++){
for(int j=1;j<=h-i;j++){
System.out.print(" ");
}
for(int k=1;k<=2*i-1;k++){
System.out.print("*");
}
System.out.println();
}

}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
在乎的人_chi
2012-10-29 · TA获得超过456个赞
知道答主
回答量:56
采纳率:0%
帮助的人:36.4万
展开全部
public static void main(String[] args) {
for(int i=1;i<=5;i++){
for(int j=i;j<5;j++){
System.out.print(" ");
}
for (int k=0;k<(2*i-1);k++){
System.out.print("*");
}
System.out.println("");
}

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 5条折叠回答
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式