C++中如何在一个二维数组中查找某个值

如题所述

简单的方法还是利用索引查找指定的值。

下面是示例代码。这里为了简单起见,所操作的数据都是int型。如果需要灵活操作数据类型,可以运用类型模板。

#include <iostream>
using namespace std;
//value 需要查找的值
//arr 在指定数组中查找
//row 数组行数
//col 数组列数
//在数组中找到返回这个数,没有找到就返回-1
int Value(int value, int arr[3][2], int row, int col)
{
int i, j;
for(i = 0 ; i < row ; i++)
for (j = 0 ; j < col ; j++)
{
if(value == arr[i][j])
return arr[i][j];
}
return -1;
}
int main()
{       
        //开辟3行2列的二维数组
int arr[3][2] = {{1,2},{3,4},{5,6}};
cout << Value(4, arr, 3, 2) << endl;
return 0;
}

希望可以帮助到您。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-19
思路:先定义一个字符数组,接着输入字符串赋值,输入需要查找的字符,遍历字符数组,查找输入的字符,如果找到停止遍历输出位置,如果遍历结束还没找到,输出没有找到。
参考代码:

//参考代码 #include<iostream>using namespace std;int main(){ char ch[100],c; int i; cin>>ch; cin>>c; for(i=0;i<strlen(ch);i++) if(ch[i]==c){ cout<<i; break; } if(i==strlen(ch)) cout<<"没有找到!"; return 0;}/*运行结果:dsafwera2*/本回答被网友采纳