初学java不久,请教大家,怎样用java打印出空心菱形???
初学java不久,请问怎样用循环打印出空心菱形?
[解决办法]
二维数组
[解决办法]
这个问题不能算是Java的问题,只是纯粹的算法问题。
代码:
public class rhombus{
public static void main(String[] args) {
int len; //菱长
String outstr=new String(); //输出
int i,j,x,y;
try{len=Integer.parseInt(args[0]);}
catch(Exception e){len=9;}
for(i=0;i <=len*2;i++){
for(j=0;j <=len*2;j++){
x=len-i;
x=x <0?-1*x:x;
y=len+(len-x);
outstr+=(j==x||j==y? "◆ ": " ");
}
outstr+= "\n ";
}
System.out.println(outstr);
}
}
运行结果:
E:\java> javac rhombus.java
E:\java> java rhombus
◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆
E:\java> java rhombus 3
◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆ ◆
◆
E:\java>
[解决办法]
为了搞点分还真TM不容易啊
[解决办法]
太简单了
[解决办法]
String outstr=new String(); //输出
用StringBuffer应该会更好
[解决办法]
mark,挺有趣
[解决办法]
to: nanyang9(奋斗…)
算法真巧!
to: lz
nanyang9(奋斗…) 回答得那么棒、多仔细,除了源代码,连算法说明都给了,可以人家给分了。好不平哦!
[解决办法]
哈哈哈哈哈哈。。。。。。
public class rhombus{
public static void main(String[] args) {
System.out.println( ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println(◆ ◆);
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ ◆ );
System.out.println( ◆ );
}
}
[解决办法]
◇◆
用拼音加加打的
[解决办法]
用取绝对值的方法:
import java.util.Scanner;
public class F{
public static void main(String[] args){
Scanner s = new Scanner(System.in);
System.out.println ("输入一个数:");
introw = s.nextInt();
for (int i = -row; i<=row; i++){
for (int j = -row; j<=row; j++){
System.out.print ((Math.abs(i)+Math.abs(j)>row-1)?"*":" ");
}
System.out.println ();
}
}
}
这个你应该看的懂了吧?
如果看不懂就直接删掉输入语句
Scanner s = new Scanner(System.in);
System.out.println ("输入一个数:");
然后给row赋个值