Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2417
  • 博文数量: 4
  • 博客积分: 125
  • 博客等级: 入伍新兵
  • 技术积分: 60
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-05 12:37
文章分类

全部博文(4)

文章存档

2012年(4)

我的朋友
最近访客

分类: IT业界

2012-05-05 13:09:02

一、题目

1001 打印“方块”

扑克牌中有四种花色:黑桃、红桃、梅花和方块。对于花色的象征意义,不同国家的人有不同的看法。

法国人将4种花色理解为矛、红心、丁香叶和方形

德国人将4种花色理解为树叶、红心、橡树果和铃铛

瑞士人将4种花色理解为橡树果、花朵、盾牌和铃铛

英国人将4种花色理解为铲子、红心、钻石和三叶草

意大利人将4种花色理解为宝剑、酒杯、拐杖和硬币

都是神马,呼呼……

今天,我们的任务是打印大小为N的方块。

输入

只有一个奇数N,表示要打印大小为N的方块。(5<=N<=99

输出

输出大小为N的方块,方块部分用#表示,其余部分用*表示。

输入示例

7

输出示例

*******

***#***

**###**

*#####*

**###**

***#***

*******

二、分析 

 

思路:

创建一个NN列的整形矩阵,矩阵的节点上0表示“*1表示“# ,对矩阵进行规律处理,之后整体打印。

#include

02   
03   
04 int x1[99][99];
05   
06 int main()
07 {
08     int n;
09     scanf("%d",&n);
10     int i,j;
11     for(i=0;i
12     {
13         for(j=0;j
14         {
15             x1[i][j] = 0;
16         }
17     }
18     int flag=(n-1)/2;
19     int x=0;
20     for(j=flag;j>0;j--)
21     {
22         for(i=1+x;i
23         {
24             x1[j][i] = 1;
25         }
26         x++;
27     }
28     x=0;
29     for(j=flag;j
30     {
31         for(i=1+x;i
32         {
33             x1[j][i] = 1;
34         }
35         x++;
36     }
37     for(i=0;i
38     {
39         for(j=0;j
40         {
41             if(x1[i][j]==0)
42             {
43                 printf("*");
44             }
45             else
46             {
47                 printf("#");
48             }
49         }
50         printf("\n");
51     }
52     return 0;
53 }
阅读(191) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~