图案打印
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
一年一度的植树节就要到了,计算机学院学生准备在学院教学楼门前的空地上种植树木。为使树木排列得更加美观,大家决定把树木排列成菱形。现在告诉你我们所拥有的树木能排列成边长为N的菱形,请你编程输出树木所排列的图案(用*号代表树木)。
输入
一个整数N(1≤N≤10)。
输出
排列成菱形图案的*号。请注意在图案中:每行树木之间无空行,每列树木之间均有一个空列。
示例输入
3
示例输出
* * ** * * * *
提示
本题主要简单的for循环语句,要控制好空格的输出
#include <stdio.h>
int main() { int i,j,n; scanf("%d",&n); for(i=1; i<=n; i++)//前n行的打印操作 { if(i>1) { for(j=0; j<2*n-2-2*(i-1); j++) printf(" "); printf("*"); for(j=2*(n-i)+1; j<2*n-1+2*(i-1)-1;j++) printf(" "); printf("*\n"); }else
{ for(j=0; j<2*n-2; j++) printf(" "); printf("*\n"); }//第一行只打印(2*n-2)个空格,再打印一个* } for(i=1;i<=n-1;i++)//下面的n-1行操作 { if(i<n-1) { for(j=0;j<2*i;j++) printf(" "); printf("*"); for(j=2*i+1;j<2*n-1+2*(n-(i+1))-1;j++) printf(" "); printf("*\n"); } else { for(j=0;j<2*n-2;j++) printf(" "); printf("*\n"); } } return 0; }