
正文
java输出空心菱形代码,用java编写空心菱形代码
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java 怎样写出一个菱形程序?空心和实心
java打印菱形通过二维数组来打印,实例如下:
int hangshu = 11;
int yiban = hangshu / 2 + 1;
int yibanduo = hangshu / 2;
System.out.println("空心菱形:");
for(int k = 1;k = yiban;k++){
for(int i = 1;i = (yiban - 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 = yibanduo;k =1;k--){
for(int i = 1;i = (yiban - 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();
}
System.out.println("实心菱形:");
for(int i = 1;i = hangshu;i++){
if(i = hangshu/2 + 1){
for(int k = 1;k = hangshu/2 + 1- i;k++){
System.out.print(" ");
}
for(int k = 1;k = i;k++){
System.out.print("* ");
}
System.out.println();
}else{
for(int k =1;k = (i -(hangshu/2 + 1));k++){
System.out.print(" ");
}
for(int k = 1;k = (2 *(hangshu/2 + 1) - i);k++){
System.out.print("* ");
}
System.out.println();
}
}
结果如下:
相关问答
Q1: 用java打印空心菱形,求详解
你看看 代码 敲一敲 你就会了 ,
我给你代码写了,注释不是也可以给你直接 写吗?
这个要自己去理解其中的循环原理才回有效的! (我原来学习Java 就是这样的)
希望你可以搞懂啊!
Q2: 如何用Java通过#号打出囧字、菱形和空心菱形?
显示效果是这样的:
代码如下:
int hangshu = 11;
int yiban = hangshu / 2 + 1;
int yibanduo = hangshu / 2;
System.out.println("空心菱形:");
for(int k = 1;k = yiban;k++){
for(int i = 1;i = (yiban - 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 = yibanduo;k =1;k--){
for(int i = 1;i = (yiban - 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();
}
System.out.println("实心菱形:");
for(int i = 1;i = hangshu;i++){
if(i = hangshu/2 + 1){
for(int k = 1;k = hangshu/2 + 1- i;k++){
System.out.print(" ");
}
for(int k = 1;k = i;k++){
System.out.print("* ");
}
System.out.println();
}else{
for(int k =1;k = (i -(hangshu/2 + 1));k++){
System.out.print(" ");
}
for(int k = 1;k = (2 *(hangshu/2 + 1) - i);k++){
System.out.print("* ");
}
System.out.println();
}
}
囧字再看看
Q3: 用Java语言输出空心菱形
import java.util.Scanner;
public class Diamond {
public static void main(String[] args) {
int length=1;//存储菱形的边长的变量
Scanner sc =new Scanner(System.in);//输入数据的扫描对象
System.out.println("请输入菱形的边长:");
length = sc.nextInt();//获取输入的边长数值
/*打印菱形的上半部分三角形 行数为length行*/
for (int i=1; i=length;i++) {//需要打印的行数
for(int j=1;j=length-i;j++){//打印左边空白的区域,随行递减1
System.out.print(" ");
}
for(int k=1;k=2*i-1;k++){//打三角形的区域
if(k==1||k==2*i-1){//空心的获取 除每行第一个以及最后一个 外其余为空白
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
/*打印菱形的下半部分三角形 中间行公用 故行数为length-1*/
for (int i = length-1;i0;i--){
for(int j=1;j=length-i;j++){
System.out.print(" ");
}
for(int k=1;k=2*i-1;k++){
if(k==1||k==2*i-1){
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
}






