编写程序,调用函数,随机生成0-99之间的数,放入5X4的矩阵,求出每行元素之和
时间: 2023-10-09 20:05:15 浏览: 57
以下是Python的实现代码:
```python
import random
# 随机生成5x4的矩阵
matrix = [[random.randint(0, 99) for j in range(4)] for i in range(5)]
# 输出矩阵
for row in matrix:
print(row)
# 求每行元素之和
row_sums = []
for row in matrix:
row_sums.append(sum(row))
# 输出每行元素之和
print("每行元素之和:", row_sums)
```
运行结果示例:
```
[79, 42, 49, 52]
[96, 15, 11, 98]
[94, 44, 57, 50]
[5, 71, 40, 47]
[98, 67, 22, 83]
每行元素之和: [222, 220, 245, 163, 270]
```
相关问题
C++编写程序,调用函数,随机生成0-99之间的数,放入5X4的矩阵,求出每行元素之和。
下面是一个实现该功能的C++程序:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void init_matrix(int matrix[][4], int rows, int cols);
void print_matrix(int matrix[][4], int rows, int cols);
void row_sum(int matrix[][4], int rows, int cols, int sum[]);
int main()
{
const int ROWS = 5;
const int COLS = 4;
int matrix[ROWS][COLS];
int sum[ROWS] = {0};
srand(time(NULL)); // 初始化随机种子
init_matrix(matrix, ROWS, COLS);
cout << "矩阵元素为:" << endl;
print_matrix(matrix, ROWS, COLS);
row_sum(matrix, ROWS, COLS, sum);
cout << "每行元素之和为:" << endl;
for (int i = 0; i < ROWS; i++) {
cout << sum[i] << " ";
}
cout << endl;
return 0;
}
void init_matrix(int matrix[][4], int rows, int cols)
{
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
matrix[i][j] = rand() % 100;
}
}
}
void print_matrix(int matrix[][4], int rows, int cols)
{
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
cout << matrix[i][j] << " ";
}
cout << endl;
}
}
void row_sum(int matrix[][4], int rows, int cols, int sum[])
{
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
sum[i] += matrix[i][j];
}
}
}
```
程序中使用了三个函数:
- `init_matrix`:用于初始化矩阵,随机生成0-99之间的整数。
- `print_matrix`:用于输出矩阵元素。
- `row_sum`:用于计算每行元素之和,并将结果保存在参数`sum`中。
程序先定义了一个5X4的矩阵和一个长度为5的数组,用于存放每行元素之和。然后使用`srand`函数初始化随机数生成器。接着调用`init_matrix`函数生成随机矩阵,输出矩阵元素,最后调用`row_sum`函数计算每行元素之和并输出结果。
用C++编写程序,调用函数,随机生成0-99之间的数,放入5X4的矩阵,求出每行元素之和
以下是用C++编写程序,调用函数,随机生成0-99之间的数,放入5X4的矩阵,求出每行元素之和的代码:
```c++
#include <iostream>
#include <ctime>
using namespace std;
void generateMatrix(int matrix[][4], int row, int col) {
// 生成0-99之间的随机数
srand((unsigned)time(NULL));
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
matrix[i][j] = rand() % 100;
}
}
}
void printMatrix(int matrix[][4], int row, int col) {
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
cout << matrix[i][j] << " ";
}
cout << endl;
}
}
void sumOfRow(int matrix[][4], int row, int col) {
for (int i = 0; i < row; i++) {
int sum = 0;
for (int j = 0; j < col; j++) {
sum += matrix[i][j];
}
cout << "第" << i + 1 << "行的元素之和为:" << sum << endl;
}
}
int main() {
int matrix[5][4];
generateMatrix(matrix, 5, 4);
cout << "随机生成的5X4矩阵为:" << endl;
printMatrix(matrix, 5, 4);
sumOfRow(matrix, 5, 4);
return 0;
}
```
程序中,`generateMatrix`函数用于生成0-99之间的随机数,`printMatrix`函数用于打印生成的矩阵,`sumOfRow`函数用于求出每行元素之和并输出。在主函数中,首先调用`generateMatrix`函数生成随机矩阵,然后调用`printMatrix`函数打印矩阵,最后调用`sumOfRow`函数求出每行元素之和并输出。
阅读全文