//第一种//输入n,,输出可大可小的数字正方形矩阵,最外层是第一层数字为1,要求同一层的数字相同,最内层为输入的n #include<stdio.h> int a[1000][1000]; int main() { int i,j,k=1,n; printf("输入一个n: ");//输入一个数, scanf("%d",&n); while(k<=n)//循环n次 { for(i=k;i<=2*n-k;i++)//进行赋值 { for(j=k;j<=2*n-k;j++) a[i][j]=k; } k=k+1;//为第二次赋值做准备 } for(i=1;i<=2*n-1;i++)//打印输入 { for(j=1;j<=2*n-1;j++) printf("%d ",a[i][j]); printf("\n"); } return 0; }
//第二种#include<stdio.h> int a[1000][1000]; int main() { int n,i,j,k=1; printf("输入一个n: ");//输入一个数, scanf("%d",&n); while(k<=n)//一共要做的循环n次 { for(i=k;i<=2*n-k;i++)//将同一层的四边赋值 { a[k][i]=k; a[2*n-k][i]=k; a[i][k]=k; a[i][2*n-k]=k; } k++; } printf("打印数组\n"); for(i=1;i<=2*n-1;i++)//打印出来 { for(j=1;j<=2*n-1;j++) printf("%d ",a[i][j]); printf("\n"); } return 0; }
数组习(两种方法)
最新推荐文章于 2021-09-22 14:56:02 发布