Chinaunix首页 | 论坛 | 博客
  • 博客访问: 141032
  • 博文数量: 66
  • 博客积分: 1571
  • 博客等级: 上尉
  • 技术积分: 715
  • 用 户 组: 普通用户
  • 注册时间: 2011-10-24 22:55
文章分类

全部博文(66)

文章存档

2012年(66)

我的朋友

分类: C/C++

2012-09-03 18:22:26


 

点击(此处)折叠或打开

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5.     int a[8][8];
  6.     int len;
  7.     int m=0;
  8.     int i,j;
  9.     for(len=1;len<=8;len++)
  10.     {
  11.         if(len%2!=0)
  12.         {
  13.             for(i=0,j=len-1;i<len,j>=0;i++,j--)
  14.              a[j][i]=m++;
  15.         }
  16.         else{
  17.             for(i=0,j=len-1;i<len,j>=0;i++,j--)
  18.              a[i][j]=m++;
  19.         }    
  20.     } //上三角形循环没问题 ,下三角循环却卡住了 ,因为是没有静下心来分析问题
  21.     //解析问题的规律
  22.     /* 1 2 3
  23.      (7,1)(2,7)(7,3)
  24.      (6,2)(3,6)(6,4)
  25.      (5,3)(4,5)(5,5)
  26.      (4,4)(5,4)(4,6)
  27.      (3,5)(6,3)(3,7)
  28.      (2,6)(7,2)
  29.      (1,7)
  30.     
  31.                  */
  32.     for(len=1;len<=7;len++) //下三角有7层要实现
  33.     {
  34.         if(len%2!=0)
  35.         {
  36.             for(i=7,j=len;i>=len,j<=7;i--,j++)
  37.              a[i][j]=m++;
  38.         }
  39.         else{
  40.             for(i=len,j=7;i<=7,j>=len;i++,j--)
  41.              a[i][j]=m++;
  42.         }    
  43.     }

  44.     for(i=0;i<8;i++)
  45.     {
  46.         for(j=0;j<8;j++)
  47.         {
  48.             cout<<a[i][j]<<" ";
  49.         }
  50.         cout<<endl;
  51.     }
  52.     
  53. }


 

阅读(850) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~