求java程序,输入数字,输出相应行数的金字塔星星

第一行一颗,第二行三颗,以奇数为序,以此类推
2025-03-27 13:12:47
推荐回答(2个)
回答1:

这是我刚才编写的用于输出金字塔的一个类。完整的代码。

//输出金字塔
import java.util.Scanner;
public class a1 {
public static void main(String[] args) {
Scanner a=new Scanner(System.in);
int N=5;//定义行数的变量
boolean b=true;
do
{
try
{
System.out.println("请输入整数类型的数字:");
N=a.nextInt(); //获取输入行数
b=false;
}
catch(Exception ea)
{
a=new Scanner(System.in);
// N=a.nextInt(); //获取输入行数
}
}while(b);
int i,j,m;
for(i=0;i {
for(m=0;m {
System.out.printf(" ");
}
for(j=0;j<2*i+1;j++)
{
System.out.printf("*");
}
System.out.printf("\n");
}
}
}

回答2:

把下面这段代码放在main里面,试试~~~
try {
System.out.print("请输入数字:");
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String str = null;
str = reader.readLine();
boolean flag = true;
for (int i = str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
flag = false;
}
}
if(flag){
for(int i=1;i<=Integer.valueOf(str);i++){
for(int n=1;n<=Integer.valueOf(str)-i;n++){
System.out.print(" ");
}
for(int j=1;j<=i;j++){
System.out.print("* ");
}
System.out.println("");
}
}else{
System.out.println("请输入有效数字!");
}
} catch (Exception e) {
e.printStackTrace();
}