输出
******
* *
* *
****** */
class Kong
{
public static void main(String[] args){
for(int i=4;i>0;i--){
for(int n=i-1;n>0;n--){
System.out.print(" ");
}
for(int j=0;j<6;j++){
if((j==0||j==5)||(i==1||i==4)){
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
/*..输入一个大写字母,比如:输入:F
输出:
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA
ABCDEFEDCBA*/
class H{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("请输入一个大写字母:");
char n = input.next().charAt(0);
for(char i='A';i<=n;i++){
for(char j='A';j<=i;j++){
System.out.print(j);
if(j==i){
for(char a=(char)(j-
1);a>='A';a--){
System.out.print(a);
}
}
}
System.out.println();
}
}
}
package design;
/**
* 第一次成功打印出这样的图案,房顶处的间隔用了j%2==0,让*与*之间产生一个空格,
* 然后在烟囱的地方卡住了,没办法在理想的地方打印出想要的想要的效果,后来设置了一个标志
* 让多出来的地方不在打印才成功。
*/
import java.util.Scanner;
public class house
{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("请输入一个行数(至少为4):");
int num = input.nextInt();
int flg=0;//定义一个标志
for(int i=0;i<=num;i++){
//循环输出空格
for(int n=0;n<num-i;n++){
System.out.print(" ");
}
for(int j=0;j<2*i-1;j++){
//打印房顶
if(j%2==0){//产生间隔效果
System.out.print("*");
}else{
System.out.print(" ");
}
}
for(int m=1;m< num-i-1;m++){
System.out.print(" ");
}
for(int m=1;m<3;m++){
if(m<=2*i){
if(i==num-1||i==num){
//打印烟囱
if(i==num-1&&flg==0){
System.out.print("*");
flg=1;
//定义的标志用在这里,让出现适当数量的*组成烟囱
}else{
System.out.print(" ");
}
}else{
System.out.print("*");
}
}else{
System.out.print(" ");
}
}
System.out.println();
}
//打印房子的身体
for(int i=0;i<=4;i++){
for(int j=0;j<num;j++){
System.out.print("* ");
}
System.out.println();
}
}
}
效果图: