JAVA用“*”打一个直角三角形
请高手们给看下这段代码错在哪?我最后总是比想输出的行数多一行,好像逻辑上有错误,就用2重循环做,输出空格换行的就算了,2重循环都是输*的!数组什么的俺不懂,能直接指出我的...
请高手们给看下这段代码错在哪 ?我最后总是比想输出的行数多一行,好像逻辑上有错误,就用2重循环做,输出空格换行的就算了,2重循环都是输*的!数组什么的俺不懂,能直接指出我的根本问题给追加分!JAVA人言出必行!
for(int i=1;i<=7;i++){
System.out.println("*");
for(int b=0;b<i;b++){
System.out.print("*");
}
}
最后如有指点代码的 望能运行成功后再提交
再次重申!提交代码的请自己亲自运行成功后再提交行么!
另外看清题目输出空格做换行的不需要!!!!!!!!!正确指出问题追加50分!两重循环一定要是都输出星的!第一重控制行!第二重控制列!4楼虽然不是我要的答案但也感谢你 展开
for(int i=1;i<=7;i++){
System.out.println("*");
for(int b=0;b<i;b++){
System.out.print("*");
}
}
最后如有指点代码的 望能运行成功后再提交
再次重申!提交代码的请自己亲自运行成功后再提交行么!
另外看清题目输出空格做换行的不需要!!!!!!!!!正确指出问题追加50分!两重循环一定要是都输出星的!第一重控制行!第二重控制列!4楼虽然不是我要的答案但也感谢你 展开
展开全部
class a{
public static void main(String [] args){
int i,j;
for(i=1;i<7;i++){ //i控制的是行数
for(j=1;j<i;j++) //j控制的是每列有i个*
System.out.print("*"); //这个print打印不换行
if(j==i)System.out.println(""); //起到换行作用
}
}
}
这次对了。哈哈。
你的问题出在println("*")上,
分析:
i=1
*
i=1;b=0
*
*
i=2
*
**
i=2;b=0
*
**
*
...
你看出来了吗?你的换行是有i决定的,同时,你又需要打一个*号,所以以此继续,你最后一行不满足i<7了,所以少了一个*.
你可以把System.out.println("*"); 改成System.out.println(""); 这么改后会出现第一排是空格。
或者你直接在你的代码最后加上一个System.out.println("*"); 一样的。哈哈。
public static void main(String [] args){
int i,j;
for(i=1;i<7;i++){ //i控制的是行数
for(j=1;j<i;j++) //j控制的是每列有i个*
System.out.print("*"); //这个print打印不换行
if(j==i)System.out.println(""); //起到换行作用
}
}
}
这次对了。哈哈。
你的问题出在println("*")上,
分析:
i=1
*
i=1;b=0
*
*
i=2
*
**
i=2;b=0
*
**
*
...
你看出来了吗?你的换行是有i决定的,同时,你又需要打一个*号,所以以此继续,你最后一行不满足i<7了,所以少了一个*.
你可以把System.out.println("*"); 改成System.out.println(""); 这么改后会出现第一排是空格。
或者你直接在你的代码最后加上一个System.out.println("*"); 一样的。哈哈。
展开全部
public class Temp {
public static void main(String[] args) {
for (int i = 1; i <= 7; i++) {
for (int b = 0; b < i; b++) {
System.out.print("*");
}
System.out.println();
}
}
}
public static void main(String[] args) {
for (int i = 1; i <= 7; i++) {
for (int b = 0; b < i; b++) {
System.out.print("*");
}
System.out.println();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
引用你的程序,修改如下:
package com.zte;
public class PrintShape {
public static void PrinTriangle() {
for (int i = 1; i <= 7; i++) {
for (int b = 0; b < i; b++) {
System.out.print("*");
}
System.out.println();
}
}
public static void main(String[] args) {
PrinTriangle();
}
}
//看到这里,想必你也知道你的错误在哪里了,是因为你第一次就打出一个星后换行了,就会比你看到的要多出一行了哦。仔细体会吧。很好理解的.
package com.zte;
public class PrintShape {
public static void PrinTriangle() {
for (int i = 1; i <= 7; i++) {
for (int b = 0; b < i; b++) {
System.out.print("*");
}
System.out.println();
}
}
public static void main(String[] args) {
PrinTriangle();
}
}
//看到这里,想必你也知道你的错误在哪里了,是因为你第一次就打出一个星后换行了,就会比你看到的要多出一行了哦。仔细体会吧。很好理解的.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那对了么,是不是for(int i=1;i<=7;i++)这里i<7就可以了呢,呵呵,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询