在学习如何计算数组中偶数和奇数的数量之前,让我们先了解什么是奇数和偶数。奇数是不能被 **2** 整除的数,而不能被 **2** 整除的数称为 **偶数**。我们可以使用 **2** 的模运算符在 C 语言中检查一个数是奇数还是偶数。如果余数为零,则该数为 **偶数**。否则,该数为 **奇数**。
示例:检查 5 和 8 是奇数还是偶数。
在这个 C 程序中,我们需要检查给定矩阵中奇数和偶数的频率。因此,我们需要分析矩阵中的每个元素,以检查它是奇数还是偶数。所以在这个 C 程序中,我们首先需要从用户那里获取矩阵的阶数,然后获取矩阵的元素。然后我们使用嵌套的 `for 循环` 显示给定的矩阵。
现在我们开始一个 `for 循环`,并通过使用 **2** 的 **模** 运算符检查矩阵的每个元素,并检查余数是否为零。如果为零,则将偶数计数器加一,否则将奇数计数器加一。显示奇数和偶数的计数器值作为结果。
for 循环的语法如下:
for (initializationStatement; testExpression; updateStatement)
{
// codes
}
这里的初始化语句只执行一次。最初,我们评估测试表达式。如果测试表达式为假,我们将终止循环。但是如果测试表达式为真,那么 `for 循环` 内部的代码将被执行和更新。这个过程一直持续到测试表达式为假。当迭代次数已知时,通常使用这种类型的循环。
步骤1:包含头文件以使用C语言程序中的内置函数。
**步骤 2:** 声明整数变量 **i, j, m, n, a, even, odd** 和矩阵 **ma[][]**,并将 Even 和 **Odd** 都设置为 **0**。
**步骤 3:** 将矩阵的阶数读入 **m** 和 **n**。
**步骤 4:** 使用嵌套的 `for 循环` 从用户那里读取矩阵的系数,并将其保存到 **ma[i][j]** 中。
**步骤 5:** 如果 **ma[i][j]%2=0**,则将 **Even** 加 **一**。
**步骤 6:** 否则将 **Odd** 加 **一**。
**步骤 7:** 重复步骤 4。
**步骤 8:** 使用嵌套的 `for 循环` 显示给定矩阵为 **ma[i][j]**。
**步骤 9:** 将奇数出现的频率显示为 Odd。
**步骤 10:** 将偶数出现的频率显示为 Even。
#include <stdio.h>
void main() {
static int ma[10][10];
int i, j, m, n, even = 0, odd = 0;
printf("Enter the order of the matrix \n");
scanf("%d %d", & m, & n);
printf("Enter the coefficients if matrix \n");
for (i = 0; i < m; ++i) {
for (j = 0; j < n; ++j) {
scanf("%d", & ma[i][j]);
if ((ma[i][j] % 2) == 0) {
++even;
} else
++odd;
}
}
printf("The given matrix is\n");
for (i = 0; i < m; ++i) {
for (j = 0; j < n; ++j) {
printf(" %d", ma[i][j]);
}
printf("\n");
}
printf("\nThe frequency of occurrence of odd number = %d\n", odd);
printf("The frequency of occurrence of even number = %d\n", even);
} /* End of main() */
Enter the order of the matrix 3 3 Enter the coefficients of the matrix 1 2 3 4 5 6 7 8 9 The given matrix is 1 2 3 4 5 6 7 8 9 The frequency of occurrence of odd number = 5 The frequency of occurrence of even number = 4