您的位置:首页 > 其它

[1127]图形打印 sdutOJ

2014-08-06 14:17 218 查看



图案打印




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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: