public class PrintDiamond2{
我们提供的服务有:成都网站设计、做网站、微信公众号开发、网站优化、网站认证、万载ssl等。为成百上千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的万载网站制作公司
public static void main (String args[]){
int TotalLayer=9;
for(int layer=1; layer=TotalLayer; layer++) {
for(int space=1; space=Math.abs((TotalLayer+1)/2-layer); space++){
System.out.print(" ");
}
for(int b=1; b=TotalLayer-2*Math.abs((TotalLayer+1)/2-layer); b++){
System.out.print("*");
}
System.out.println();
}
}
}
用3个for循环打出菱形,可以改变TotalLayer的值来改变菱形的大小
第一个for循环规定多少行
第二个for循环规定每行有多少个空格
第三个for循环规定每行有多少个星号
然后换行,重复2,3循环直到完成第一个循环
最后菱形完成
参考下面主要代码:
public static void draw()
{
int n=10;
for(int i=1;i=n;i++)//控制行数
{
for(int k=n-1;k=i;k--)//打印空格
{
System.out.print(" ");
}
for(int j=1;j=2*i-1;j++)//打印*
{
System.out.print("*");
}
System.out.println();
}
for(int i=n-1;i=1;i--)
{
for(int k=i;k=n-1;k++)
{
System.out.print(" ");
}
for(int j=1;j=2*i-1;j++)
{
System.out.print("*");
}
System.out.println();
}
}
java 输出菱形代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package demo;
public class Demo01 {
public static void main(String[] args) {
int i, j, k;
for (i = 1; i = 5; i++) {
for (j = 1; j = 5 - i; j++)
System.out.print(" ");
for (k = 1; k = 2 * i - 1; k++)
System.out.print("*");
System.out.println("");
}
for (i = 1; i = 4; i++) {
for (j = 1; j = i; j++)
System.out.print(" ");
for (k = 1; k = 9 - 2 * i; k++)
System.out.print("*");
System.out.println("");
}
}
}
绘制算法:
1、分为两部分,上半部分和下半部分
2、输出空格部分换个输出*部分
3、最后一个标签需要换行
java打印菱形方法:
package circulationDemo;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请输入要打印的行数:");
int num = input.nextInt();
t1(num);// 正直角
split();
t2(num);// 倒直角
split();
t3(num);// 等腰三角
split();
t4(num);// 等腰倒三角++
split();
t5(num);// 等腰倒三角--
split();
t6(num);// 实心菱形
split();
t7(num);// 空心菱形(1)
split();
t8(num);// 空心菱形(2)
split();
t9(num);// 空心菱形(3)
}
private static void t9(int num) {
for (int k = 1; k = num; k++) {
for (int i = 1; i = (num - k); i++) {
System.out.print(" ");
}
System.out.print("*");
for (int i = 1; i = ((k - 2) * 2 + 1); i++) {
System.out.print(" ");
}
if (k != 1) {
System.out.print("*");
}
System.out.println();
}
for (int k = num-1; k = 1; k--) {
for (int i = 1; i = (num - k); i++) {
System.out.print(" ");
}
System.out.print("*");
for (int i = 1; i = ((k - 2) * 2 + 1); i++) {
System.out.print(" ");
}
if (k != 1) {
System.out.print("*");
}
System.out.println();
}
}
private static void t8(int num) {
// 上半部分
for (int i = 1; i = num; i++) {
// 打印上半部分空格
for (int j = 1; j = num - i; j++) {
System.out.print(" ");
}
// 打印原本实心的*部分
for (int j = 1; j = 2 * i - 1; j++) {
// 仅在一行的开头和末尾打印*
if (j == 1 || j == 2 * i - 1) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println();
}
// 下半部分
for (int i = 1; i = num - 1; i++) {
for (int j = 1; j = i; j++) {
System.out.print(" ");
}
for (int j = 1; j = 2 * (num - i - 1) + 1; j++) {
if (j == 1 || j == 2 * (num - i - 1) + 1) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println();
}
}
private static void t7(int num) {
// 打印上半部分
for (int i = 1; i = num; i++) {
// 打印空格
for (int j = 1; j = (num - i); j++) {
System.out.print(" ");
}
// 打印*的个数
if (i == 1) {
System.out.print("*");
} else {
System.out.print("*");
// 打印菱形里的空格
for (int j = 1; j = (2 * i - 3); j++) {
System.out.print(" ");
}
System.out.print("*");
}
System.out.println();
}
// 打印下半部分
for (int i = num - 1; i 0; i--) {
// 打印空格
for (int j = 1; j = (num - i); j++) {
System.out.print(" ");
}
// 打印*的个数
if (i == 1) {
System.out.print("*");
} else {
System.out.print("*");
// 打印菱形里的空格
for (int j = 1; j = (2 * i - 3); j++) {
System.out.print(" ");
}
System.out.print("*");
}
System.out.println();
}
}
private static void t6(int num) {
// 上半部分
for (int i = 1; i = num; i++) {
for (int j = 1; j = num - i; j++) {
System.out.print(" ");
}
for (int j = 1; j = 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
// 下半部分
for (int i = 1; i = num - 1; i++) {
for (int j = 1; j = i; j++) {
System.out.print(" ");
}
for (int j = 1; j = 2 * (num - 1 - i) + 1; j++) {
System.out.print("*");
}
System.out.println();
}
}
private static void t5(int num) {
for (int i = num; i 0; i--) {
for (int j = 1; j = num - i; j++) {
System.out.print(" ");
}
for (int j = 1; j = 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
回答于 2022-12-14