C程序设计(第三版)课后习题答案

求谭浩强《C程序设计》(第三版)课后习题的全部答案
2025-03-25 22:09:12
推荐回答(1个)
回答1:

我现在做了 C程序设计(第三版)课后习题答案 中的7.7和7.8,是求魔方阵和鞍点的,剩下的我以后在做
#include
void main()
{
int i,j,m,n,p,number=0;
int a[4][4];
for(i=0;i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0;i<4;i++)
{for(j=0;j<4;j++)
printf("%-4d",a[i][j]);
printf("\n");}
for(i=0;i<4;i++)
{ m=0;
for(j=0;j<4;j++)
if(a[i][m]<=a[i][j]) m=j,p=i;
n=0;
for(i=0;i<4;i++)
if(a[n][m]>=a[i][m]) n=i;
{if(p==n)
printf("第%d行鞍点是a[%d][%d]=%d",p,p,m,a[p][m]);}
number++;
}
if(number==0)
printf("没有鞍点\n");
}

上面是求鞍点的,下面是求魔方阵的
#define N 20
main()
{
int a[N][N];
int n,i,j,r;
scanf("%d",&n);
for(i=0;ii=0;
j=n/2;
a[i][j]=1;
for (r=2;r<=n*n;r++)
if (a[(i+n-1)%n][(j+1)%n]==0)
{i=(i+n-1)%n;j=(j+1)%n;a[i][j]=r;}
else
{i=(i+1)%n;a[i][j]=r;}
for(i=0;i {
for(j=0;j printf("\n");
}
}