Chinaunix首页 | 论坛 | 博客
  • 博客访问: 388871
  • 博文数量: 55
  • 博客积分: 1907
  • 博客等级: 上尉
  • 技术积分: 869
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-04 19:30
文章分类

全部博文(55)

文章存档

2011年(32)

2010年(23)

分类: C/C++

2010-12-04 11:48:33

/* 修改前一个问题的identity_matrix函数,他可以对数组进行扩展,
 * 从而能够接受任意大小的矩阵参数。函数的第一个参数应该是一个整型
 * 指针,你需要第二个参数用于指定矩阵的大小。
 */
 

/*
 * The storage order of the array elements allows a pointer to an
 * integer to be walked sequentially through the elements.Separate
 * counters keep track of the row and column, using the size argument
 * provided. Note that there is no way to check whether the matrix is
 * actually the size indicated by the second augrment.
 */


/* Test a square matrix to see if it is an identity matrix. */

#define FALSE    0
#define TRUE    1

int identity_matrix( int *matrix, int size )
{
    int row;
    int column;

    /* Go through each of the matrix elements */
    for( row=0; row<size; row+=1 )
    {
        for( column=0; column<size; column+=1 )
        {
        
            if( *matrix++ != ( row == column ) )    //?

                    return FALSE;
        }
    }
    
    return TRUE;
}

 

 

 


 

阅读(1514) | 评论(0) | 转发(0) |
0

上一篇:数组之8.3

下一篇:数组之8.5

给主人留下些什么吧!~~