永发信息网

编程的de的问题

答案:1  悬赏:20  手机版
解决时间 2021-04-26 14:30
  • 提问者网友:动次大次蹦擦擦
  • 2021-04-25 22:09

#include<stdio.h>
#define N 8
void main()
{
 int  a[N][N]={0};
 int z=0;
 int i=8-1;
 int x=0;
 int y=0;
 int b=1;
 for(z=0;b<=N*N;z++,i--){
 while(x<=i&&y==z)
  a[y][x++]=b++;
  x--;
     y++;

  while(y<=i&&x==i)a[x++][y]=b++;
   y--;
   x--;
  
   while(x>=z&&y==i)a[x][y--]=b++;
    y++;
       x--;
    
   
    while(y>=z&&x==z)a[x--][y]=b++;
     x++;
        y++;
    
   }
   for(i=7,x=0;x<i;x++){
    for(y=0;y<i;y++){
     printf("%d\t",a[x][y] );
}
printf("\n");
}
}
要怎样改才可以输出成这样

最佳答案
  • 五星知识达人网友:雾月
  • 2021-04-25 22:34

#include<stdio.h>
#define N 8
int main()
{
 int  a[N][N]={0};
 int z=0;
 int i=8-1;
 int x=0;
 int y=0;
 int b=1;
 for(z=0;b<=N*N;z++,i--){
 x=y=z;
 while(x==z&&y<=i)
  a[x][y++]=b++;
 x++;y--;
 
 while(x<=7-z&&y==i)
  a[x++][y]=b++;
 x--;y--;
 
 while(x==7-z&&y>=7-i)
  a[x][y--]=b++;
 y++;x--;
 
 while(x>z&&y==7-i)
  a[x--][y]=b++;
 }
 
 for(i=7,x=0;x<=i;x++){
  for(y=0;y<=i;y++)
   printf("%d\t",a[x][y] );
  printf("\n");
 }
}


改成这样就行了

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯