输入n和m后,请问在 n*m 的矩阵中,是否有x如果存在请输出 "yes",否则输出 "no" c++
时间: 2024-02-13 08:02:28 浏览: 82
以下是在 C++ 中实现在 n*m 的矩阵中查找指定元素的示例代码:
```c++
#include <iostream>
#include <vector>
using namespace std;
void findElement(vector<vector<int>>& matrix, int x) {
for(int i = 0; i < matrix.size(); i++) {
for(int j = 0; j < matrix[0].size(); j++) {
if(matrix[i][j] == x) {
cout << "yes" << endl;
return;
}
}
}
cout << "no" << endl;
}
int main() {
int n, m, x;
cin >> n >> m >> x;
vector<vector<int>> matrix(n, vector<int>(m));
for(int i = 0; i < n; i++) {
for(int j = 0; j < m; j++) {
cin >> matrix[i][j];
}
}
findElement(matrix, x);
return 0;
}
```
首先,程序读入矩阵的行数和列数 `n` 和 `m`,以及要查找的元素 `x`。然后,使用嵌套的 `for` 循环遍历整个矩阵,查找是否有指定的元素。如果找到了,直接输出 "yes" 并结束程序,否则在循环结束后输出 "no"。
注意,这里使用了二维向量 `vector<vector<int>>` 来存储矩阵,可以根据输入的行数和列数来初始化向量的大小,并使用嵌套的 `for` 循环读入矩阵的每个元素。
希望对你有帮助!
阅读全文