基于c语言和java的螺旋方阵

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

编程序,显示螺旋方阵:12341213145111615610987#includestdio.h#definemax10intmain(){intsquare[max][max];inti,j,k=1,d=0,n;//d为操作向量printf(请输入螺旋方阵的阶数n:);scanf(%d,&n);if(nmax){printf(阶数超过最大值max);printf(\n);printf(Pleasetryagain);printf(\n);}else{for(i=0;in;++i){for(j=0;jn;++j)square[i][j]=0;/*将方阵各个元素都赋值为零*/}i=j=0;for(;k=n*n;k++){square[i][j]=k;//给数组赋值switch(d){case0:if(0=i&&in&&0=(j+1)&&(j+1)n&&square[i][(j+1)]==0)j++;/*实现列递加*/elsed=1,i++;break;//退出switch语句case1:if(0=(i+1)&&(i+1)n&&0=j&&jn&&square[(i+1)][j]==0)i++;/*实现行递加*/elsed=2,j--;break;case2:if(0=i&&in&&0=(j-1)&&(j-1)n&&square[i][(j-1)]==0)j--;/*实现列递减*/elsed=3,i--;break;case3:if(0=(i-1)&&(i-1)n&&0=j&&jn&&square[(i-1)][j]==0)i--;/*实现行递减*/elsed=0,j++;break;default:break;}}for(inta=0;an;a++){for(intb=0;bn;b++){printf(%3d,square[a][b]);printf(\t);}printf(\n);}}return0;}packagejava7;importjava.util.Scanner;publicclasstest5{publicstaticvoidmain(String[]args){intsquare[][]=newint[20][20];inti,j,k=1,d=0;//d为操作向量System.out.print(请输入螺旋方阵的阶数n:);Scannersin=newScanner(System.in);intn=sin.nextInt();if(n20){System.out.print(阶数超过最大值);System.out.print(Pleasetryagain);}else{for(i=0;in;++i){for(j=0;jn;++j)square[i][j]=0;/*将方阵各个元素都赋值为零*/}i=j=0;for(;k=n*n;k++){square[i][j]=k;//给数组赋值switch(d){case0:if(0=i&&in&&0=(j+1)&&(j+1)n&&square[i][(j+1)]==0)j++;/*实现列递加*/else{d=1;i++;}break;//退出switch语句case1:if(0=(i+1)&&(i+1)n&&0=j&&jn&&square[(i+1)][j]==0)i++;/*实现行递加*/else{d=2;j--;}break;case2:if(0=i&&in&&0=(j-1)&&(j-1)n&&square[i][(j-1)]==0)j--;/*实现列递减*/else{d=3;i--;}break;case3:if(0=(i-1)&&(i-1)n&&0=j&&jn&&square[(i-1)][j]==0)i--;/*实现行递减*/else{d=0;j++;}break;default:break;}}}for(i=0;in;i++){for(j=0;jn;j++){System.out.print(+square[i][j]);System.out.print('\t');}System.out.println();}}}

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功