读书人

求这样一个矩阵的输出代码解决方案

发布时间: 2012-02-11 09:51:34 作者: rapoo

求这样一个矩阵的输出代码
求这样一个矩阵的输出代码
1 1 1 1 1 1 1
1 2 2 2 2 2 1
1 2 3 3 3 2 1
1 2 3 4 3 2 1
1 2 3 3 3 2 1
1 1 1 1 1 1 1

[解决办法]
void print_matrix(int n)
{
int i,j,x,y,m,width,w;
m = n + 1;

if( n <= 0 )
{
return;
}

for(w=m/2,width=0;w> 0;w=w/10)
{
width++;
}

for(i=1;i <=n;++i)
{
x=(i <=m/2)?i:(m-i);
for(j=1;j <=n;++j)
{
y=(j <=m/2)?j:(m-j);
printf( "%*d ",width,(x <y)?x:y);
}
printf( "\n ");
}
}

这个就比较完整了

读书人网 >C语言

热点推荐