- 大家在初学编程的时候可能会碰到一类打印三角形,菱形的题目。
- 由于Java和C的语法规则差不多,作者这里就只写用Java实现菱形的方法。C语言实现的方法大家可以自己去尝试!
其实这类题目的核心思想就在于寻找形状之间的规律,或者说每一行空格和*的规律。
实现代码如下:
//打印菱形
/*
*
* *
* * *
* *
*
*/
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner in = new Scanner (System.in);
int a=in.nextInt();
//打印上半部分
int b=0; //用b和c来控制循环的次数依次减少或增加。
int c=0;
for(int i=0;i<=a;i++){ //打印a+1行。
for(int j=0;j<a-b;j++){ //上半部分的空格在逐渐减少。
System.out.print(" ");
}
for(int k=0;k<1+c;k++){ //上半部分*在逐渐增多。
System.out.print("* ");
}
System.out.print("\n");
b++;
c++;
}
//打印下半部分
b=0;
c=0;
for(int i=0;i<a;i++){ //只需打印a行。
for(int j=0;j<1+c;j++){ //其实就是与上半行打印*的互换。
System.out.print(" ");
}
for(int k=0;k<a-b;k++){
System.out.print("* ");
}
System.out.print("\n");
b++;
c++;
}
}
}
如果这篇文章对你有帮助的话,可以关注一下作者,让我有持续更新的动力!