[原创]输出一个矩阵

如下图,按箭头方向输出改矩阵的元素:

观察可知,若输出元素为M[i][j]时,i+j  = k,k值从0到row+col-2逐渐变化,当k为奇数时,输出M[i][k-i];当k为偶数时,输出M[k-i][i]。

 1 void outputMatrix(const char *M, const int row, const int col)
 2 {
 3     int n = row + col - 2;  
 4     for(int k=0; k<=n; k++)
 5         for(int i=0; i<=k; i++)
 6             {
 7                 if(k%2!=0 && i<row && k-i<col)
 8                     cout<<M[i][k-i]<<endl;
 9                 else if(i<col && k-i<row)
10                     cout<<M[k-i][i]<<endl;
11              }              
12 }    
View Code

 

posted @ 2014-04-06 21:36  XpowerLord  阅读(363)  评论(0编辑  收藏  举报