
题目
解决代码及点评
/* 功能:编程产生如下形式的方阵。 1 2 2 2 2 2 1 3 1 2 2 2 1 4 3 3 1 2 1 4 4 3 3 3 1 4 4 4 3 3 1 5 1 4 4 3 1 5 5 5 1 4 1 5 5 5 5 5 1 要求:不允许使用键盘输入语句和静态赋值语句,尽量少用循环。 时间:12:28 2013/10/26 */ #include<stdio.h> #include <stdlib.h> void main() { const int N=7; int a[N][N]={0}; for(int i=0;i<N;i++) //横坐标遍历 { if(i<=N/2) //小与N/2的部分按规则放3 { for (int j=i+1;j<N-i-1;j++) { a[j][i]=3; } } if(i>=N-N/2) //大于的部分按规则放5 { for (int j=N-i;j<i;j++) { a[j][i]=4; } } } for(int i=0;i<N;i++) //纵坐标遍历 { if(i<=N/2) //符合条件的安规则赋2 { for (int j=i+1;j<N-i-1;j++) { a[i][j]=2; } } if(i>=N-N/2) //赋5 { for (int j=N-i;j<i;j++) { a[i][j]=5; } } } for(int i=0;i<N;i++) //对角线赋值 { for(int j=0;j<N;j++) { if(i==j)a[i][j]=1; //j==i if(i+j==6)a[i][j]=1; //i+j=N-1 } } for (int i=0;i<N;i++) //打印数组 { for (int j=0;j<N;j++) { printf("%2d",a[i][j]); } printf("\n"); } system("pause"); }
代码编译以及运行
由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:
1)新建工程
2)选择工程
3)创建完工程如下图:
4)增加文件,右键点击项目
5)在弹出菜单里做以下选择
6)添加文件
7)拷贝代码与运行
程序运行结果