黑马程序员技术交流社区
标题:
Java输出 菱形问题
[打印本页]
作者:
Johnny_Hu
时间:
2015-3-6 20:23
标题:
Java输出 菱形问题
package com.itheima;
import java.util.*;
public class Demo1 {
/*
* 输出一个空心菱形
*/
static int demo(int num){
for(int i=0; i<num; i++){
for(int k=num; k>i; k--){
System.out.print(" ");
}
for(int j=0; j<=i*2; j++){
if(j==0 || j==num)
{
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
for(int i=0; i<num; i++){
for(int k=0; k<=i; k++){
System.out.print(" ");
}
for(int j=0; j<(num-i)*2-1; j++){
if(j==0 || j==num)
{
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
return num;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("请输入一个整数:");
int num = in.nextInt();
demo(num);
}
}
//前面一个会判断 可是最后输出的*符号 不知道该恒等于几
复制代码
作者:
shewim
时间:
2015-3-7 14:05
后面一个“*”不应该就是你内层循环的边界值吗?
package com.itheima;
import java.util.*;
public class Demo1 {
/*
* 输出一个空心菱形
*/
static int demo(int num){
for(int i=0; i<num; i++){
for(int k=num; k>i; k--){
System.out.print(" ");
}
for(int j=0; j<=i*2; j++){
if(j==0 || j==i*2)
{
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
for(int i=0; i<num; i++){
for(int k=0; k<=i; k++){
System.out.print(" ");
}
for(int j=0; j<=(num-i)*2-2; j++){
if(j==0 || j==(num-i)*2-2)
{
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
return num;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("请输入一个整数:");
int num = in.nextInt();
demo(num);
}
}
复制代码
作者:
Johnny_Hu
时间:
2015-3-7 20:06
谢谢 可以了
作者:
Johnny_Hu
时间:
2015-3-7 20:13
shewim 发表于 2015-3-7 14:05
后面一个“*”不应该就是你内层循环的边界值吗?
谢谢 可以了 :P
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2