题目
若一个布尔矩阵所有行和所有列的和都是偶数,则称为偶数矩阵。请编写一个程序,判断一个布尔矩阵是否是偶数矩阵。
要求:
(1)输入:首先输入一个正整数n(n<100),代表该矩阵的大小,接下来是n行n列的矩阵。输出:如果这个矩阵是偶数矩阵,则输出“yes”,否则输出“no”。
(2)需定义矩阵输入函数InputArray()。
(3)需定义偶数矩阵函数IsParity()。
完整解决方案
#include<stdio.h>void InputArray(int a[100][100], int *n) {int i, j;scanf("%d", n);for (i = 0; i < *n; i++) {for (j = 0; j < *n; j++) {scanf("%d", &a[i][j]);}}
}void IsParity(int a[100][100], int n) {int r, c;int i, j;int count = 0;for (i = 0; i < n; i++) {r = 0;c = 0;for (j = 0; j < n; j++) {r += a[i][j];c += a[j][i];}if (r % 2 != 0 || c % 2 != 0) {count++;}}if (count == 0) {printf("yes\n");} else {printf("no\n");}
}int main() {int a[100][100];int n;InputArray(a, &n);IsParity(a, n);return 0;
}
效果