编写void fun(int a[M][M])函数,建立M*M的如下矩阵a,M为定义好的符号常量。
若M为6矩阵a为
1 1 1 1 1 1
1 2 2 2 2 1
1 2 3 3 2 1
1 2 3 3 2 1
1 2 2 2 2 1
1 1 1 1 1 1
若M为3矩阵a为
1 1 1
1 2 1
1 1 1
#include <stdio.h>
#define M 6
void fun(int a[M][M])
{
int i,j;
for(i=0;i<M;i++)
for(j=0;j<M;j++)
{
if(i<j)
{
if(i<M-j-1)
a[i][j] = i+1;
else
a[i][j] = M-j;
}
else
{
if(j<M-i-1)
a[i][j] = j+1;
else
a[i][j] = M-i;
}
}
}
int main()
{
int a[M][M];
int i,j;
fun(a);
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
printf("%d ",a[i][j]);
printf("\n");
}
return 0;
}
#define M 6
#include<stdio.h>
void Init(int num[M][M],int sz,int i)
{
int k = i;
for (k ; k < sz; k++)
{
int j = 0;
for (j = i; j < sz; j++)
{
num[k][j] = i+1;
}
}
if(sz>i)
Init(num, sz - 1, i + 1);
}
int main()
{
int num[M][M] = { 0 };
int sz = M; int i = 0;
Init(num,sz,i);
for (i = 0; i < M; i++)
{
int j = 0;
for (j = 0; j < M; j++)
{
printf("%d ", num[i][j]);
}
printf("\n");
}
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!