将螺旋输出的数字放在表格内,求指导、、、、
程序代码:
//将螺旋输出的数字放在表格内 #include<stdio.h> int a[10][10]; void luoxuan(int n); void main() { printf("***将螺旋输出的数字放在表格内***\n\n"); printf("请输入N(1-9)\n"); int n,i,j,k,q; while(scanf("%d",&n)!=0) { while(n>9) { printf("对不起,输入的数超出范围不能运行,请重新输入\n"); scanf("%d",&n); } luoxuan(n); for(i=1,q=-1;i<=2*n+1;i++) { if(i%2==0) q++; for(j=1,k=0;j<=2*n+1;j++) { if(i%2==0 && j%2==0 ) { printf("%2d",a[q][k++]); } if(i%2!=0 && j%2==0) printf("━"); if(i%2!=0 && j%2!=0) { if(i==1) { if(j==1) printf("┏"); else if(j==2*n+1) printf("┓"); else printf("┳"); } else if(i==2*n+1) { if(j==1) printf("┗"); else if(j==2*n+1) printf("┛"); else printf("┻"); } else if(j==1) { if(i%2==1) printf("┣"); } else if(j==2*n+1) { if(i%2==1) printf("┫"); } else printf("╋"); } if(i%2==0 && j%2!=0) printf("┃"); } printf("\n"); } } } void luoxuan(int n) { int i,j,k=1,m=0; for(m=0;m<=n/2;m++) { for(i=m,j=m;j<n-m;j++) a[i][j]=k++; for(j=n-m-1,i=m+1;i<n-m;i++) a[i][j]=k++; for(i=n-m-1,j=n-2-m;j>=m;j--) a[i][j]=k++; for(j=m,i=n-2-m;i>m;i--) a[i][j]=k++; } }求指导,没分了,见谅!!