输入第一行给出两个正整数m和n(1<=m,n<=10)随后m行,每行给出n个整数,期间以空格分隔,输出格式:每行输出对应矩阵行元素的正数个数 (格式c语言)
时间: 2025-01-19 19:14:06 浏览: 134
以下是一个符合您要求的C语言程序,它可以读取一个m行n列的矩阵,并输出每一行中正数的个数:
```c
#include <stdio.h>
int main() {
int m, n;
scanf("%d %d", &m, &n);
int matrix[m][n];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &matrix[i][j]);
}
}
for (int i = 0; i < m; i++) {
int positive_count = 0;
for (int j = 0; j < n; j++) {
if (matrix[i][j] > 0) {
positive_count++;
}
}
printf("%d\n", positive_count);
}
return 0;
}
```
这个程序的工作原理如下:
1. 首先,我们声明变量 `m` 和 `n` 来存储矩阵的行数和列数。
2. 使用 `scanf` 函数读取 `m` 和 `n` 的值。
3. 声明一个二维数组 `matrix` 来存储矩阵。
4. 使用嵌套的 `for` 循环读取矩阵的元素。
5. 然后,我们使用另一个嵌套的 `for` 循环遍历每一行。
6. 对于每一行,我们初始化一个计数器 `positive_count` 为0。
7. 在内层循环中,我们检查每个元素是否为正数。如果是,则增加 `positive_count`。
8. 每一行结束后,我们打印出该行的正数个数。
9. 程序结束后返回0。
这个程序满足了您的要求:它读取一个 m 行 n 列的矩阵,并输出每一行中正数的个数。
阅读全文
相关推荐













