Hey,我是寒水,一名大二学生,电子商务专业在读,正在学习Java中。我试图将在Java学习中遇到的一些困惑和最终的解答发在这个账号上,希望以此来激励我不要放弃学习!
最近在图书馆借了一本《趣味编程100例》,有些题目对于我这种Java新手来说非常的有意思,因此我打算将其中一些有趣的题目发布在我的博客里!
- 题目很简单,如下:
打印出金字塔图案,如图所示,并尝试打印出倒金字塔,直角三角形。
·
······················ ······················
这题主要是围绕行数、空格、星星三者之间的函数关系展开的一个问题,对于我而言是一个好问题!
解答如下:
import java.util.Scanner;
public class First {
static void Star(int n) { //金字塔
String a=" ";
String b="☆";
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n-i;j++)
{
System.out.print(a);
}
for(int j=0;j<2*i-1;j++)
{
System.out.print(b);
}
System.out.print("\n");
}
}
static void Star_dao(int n) { //倒金字塔
String a=" ";
String b="☆";
for(int i=n;i>0;i--)
{
for(int j=1;j<=n-i;j++)
{
System.out.print(a);
}
for(int j=0;j<2*i-1;j++)
{
System.out.print(b);
}
System.out.print("\n");
}
}
static void Star_zhijiao(int n) {//直角三角形
String a="☆";
for(int i=n;i>0;i--)
{
for(int j=0;j<i;j++)
{
System.out.print(a);
}
System.out.print("\n");
}
}
public static void main(String[] args) {
Scanner input =new Scanner(System.in);
System.out.print("请输入想要绘画几行金字塔。");
int num=input.nextInt();
System.out.println("图像如下:");
Star(num);
System.out.print("请输入想要绘画几行倒金字塔。");
num=input.nextInt();
System.out.println("图像如下:");
Star_dao(num);
System.out.print("请输入想要绘画几行直角三角形。");
num=input.nextInt();
System.out.println("图像如下:");
Star_zhijiao(num);
}
}
感谢阅读,欢迎关注!