题目
解决代码及点评
/*
11. 判断一个给定的5×5方阵是否以第3列为轴线对称?
*/
#include <stdio.h>
#include <stdlib.h>
#define N 5
/*
功能:判断数组是否以某行对称
参数:a数组名 n数组行数 column指定某列
返回值:1: 对称 0:不对称
*/
int isSymmetry(int (*a)[N],int n,int column)
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j < column - 1; j++)
{
if (a[i][j] != a[i][n - 1 - j])
{
return 0;
}
}
}
return 1;
}
void main()
{
int a[N][N];
for (int i = 0; i < N; i++)
{
for (int j = 0; j < N; j++)
{
a[i][j] = (j + 1) % 2;
}
}
for (int i = 0; i < N; i++)
{
for (int j = 0; j < N; j++)
{
printf("%-3d",a[i][j]);
}
printf("\n");
}
isSymmetry(a,N,3) == 1 ? printf("Yes!\n") : printf("No!\n");
system("pause");
}
代码编译以及运行
由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:
1)新建工程
2)选择工程
3)创建完工程如下图:
4)增加文件,右键点击项目
5)在弹出菜单里做以下选择
6)添加文件
7)拷贝代码与运行
程序运行结果