描述
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的X形图案。
输入描述
多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。
输出描述
针对每行输入,输出用“*”组成的X形图案。
示例1
输入:5
输出:
* *
* *
*
* *
* *
示例2
输入:6
输出:
* *
* *
**
**
* *
* *
分析:X形图案可以拆分成两根斜线,其中i==j时输出星号,或者i==n-i-1时输出星号即可,其他情况皆输出空格。
C语言代码
#include <stdio.h> int main() { int a; while (scanf("%d", &a) != EOF) { for(int i = 0; i < a; ++i) //行数 { for(int j = 0; j < a; ++j) //列数 { if(i == j) printf("*"); else if(j == a-i-1) printf("*"); else printf(" "); } printf("\n");//一行打印结束换行 } } return 0; }
Java代码
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNextInt()) { int n = in.nextInt(); int i=0,j=0; for(i=0;i<n;i++){ for(j=0;j<n;j++){ if(i==j){ System.out.print("*"); }else if((i+j)==n-1){ System.out.print("*"); } else{ System.out.print(" "); } } System.out.println(); } } } }