标题:求高手帮忙看下这个code 错在哪?
只看楼主
nick6636
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-10-1
 问题点数:0 回复次数:1 
求高手帮忙看下这个code 错在哪?
问题是有个矩阵
1   1
1  -1
然后变成
1   1   1   1
1  -1   1  -1
1   1  -1  -1
1  -1  -1   1
在一点点按规律变大

#include <stdio.h>
#include <stdlib.h>
void fill( int *A, int n, int r, int c, int sign ) ;
int main( int argc, char *argv[] ) {
int n, i, j, sign ;
int *A ;
n = atoi( argv[1] ) ;
A = ( int * ) malloc( sizeof( int ) * n * n ) ;
sign = 1 ;
fill( A, n, 0, 0, sign ) ;
printf( "\n") ;
for ( i = 0 ; i < n ; i++ ) {
for ( j = 0 ; j < n ; j++ ) {
printf( "%5d", A[ i*n+j ] ) ;
}
printf( "\n" ) ;
}
return 0;
}
void fill( int *A, int n, int r, int c, int sign ) {
if ( n == 2 ) {
A[ (r*n) + c ]        = sign ;
A[ (r+1)*n + c ]      = sign ;
A[ (r*n) + (c+1) ]    = sign ;
A[ (r+1)*n + (c+1) ]  = -sign ;
}
else {
fill( A, n, r, c, sign ) ;
fill( A, n, r, c+n/2, sign ) ;
fill( A, n, r+n/2, c, sign ) ;
fill( A, n, r+n/2, c+n/2, sign * (-1) ) ;
}
}
搜索更多相关主题的帖子: include 规律 void 
2012-10-01 08:32
nick6636
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-10-1
得分:0 
somebody help~~~~~
2012-10-01 08:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-382401-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.051679 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved