|
发表于 2006-12-28 01:44:17
|
显示全部楼层
凑热闹
- #define ROW 13
- #define COL 9
- void f(int a[ROW][COL],int n,int col)
- {
- int l,c,_ch_c,_ch_l;
- a[0][0] =_ch_c =0;
- for(c =1;c <col;c++)
- {
- a[0][c] =a[0][c-1] +(_ch_c ? 1 :(c < n ?c+c:n+n-1));
- _ch_c =!_ch_c;
- }
- _ch_c =_ch_l =0;
- for(l =1;l <n;l++)
- {
- for(c=0;c<col;c++)
- {
- a[l][c] =(c !=col-1)?
- a[l-1][c+1] +(_ch_c ? 1 : -1):
- a[l-1][c] +(_ch_c ? 1 :
- (n-l >= col ? col+col-1:n-l+n-l));
- _ch_c =!_ch_c;
- }
- _ch_l =!_ch_l;
- _ch_c =_ch_l;
- }
- }
- int main(int argc,char ** argv)
- {
- int a[ROW][COL],i,j;
- f(a,ROW,COL);
- for(i =0; i< ROW;i++)
- {
- for(j =0; j< COL;j++)
- {
- printf("%4d ",a[i][j]);
- }
- printf("\n");
- }
- return 1;
- }
复制代码 |
|