C++怎么在一个数组中matlab查找元胞数组的数字数字

用C++编写数组的查找:用数组实现随机 10 个数整数,输入一个查找数 x, 查找 x 是是否出现在数组中?_百度知道
用C++编写数组的查找:用数组实现随机 10 个数整数,输入一个查找数 x, 查找 x 是是否出现在数组中?
如果在数组中,它的位置是多少?...
如果在数组中,它的位置是多少?
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
采纳数:62
获赞数:53
int&main(){ int&a[10]={0,11,22,3,4,5,6,7,8,9}; int&b; int&c=0; cout&&&请输入一个数:&; cin&&b;
for(int&n=0;n&10;n++) {
if(a[n]==b)
{&c=n+1;} }&&&&&&&&if(c==0) {cout&&&没有这个数&;} else{ cout&&&位置是第&&&c; }}
采纳数:85
获赞数:226
#&stdlib.h&&&&using&namespace&int&main(){&&&&int&a[10];&&&&for(int&i=0;i&10;i++)&&&&{&&&&&&a[i]&=&rand()%500;//0~500之间的随机数;&&&&&&&cout&&a[i]&&'&';&&&&&}&&&&cout&&&输入x:&;&&&&int&x;&&&&&cin&&x;&&&&bool&f&=&&&&&&for(i=0;i&10;i++)&&&&{&&&&&&&&&&&&&&&&&&&&if(x==a[i]){&&&&&&&&&&&&f&=&&&&&&&&&&&&&&cout&&&位置&&&i+1&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&}&&&&if(!f){&&&&&&&&cout&&&不存在&&&&&&&&}&&&&&&return&0;&}
这个程序运行有些问题
//头文件不知道怎么丢了#include&iostream&#include&stdlib.h&
int main(){
int a[10];
for(int i=0;i&10;i++)
a[i] = rand()%500;//0~500之间的随机数;
cout&&a[i]&&' ';
cout&&&输入x:&;
for(i=0;i&10;i++)
if(x==a[i]){
cout&&&位置&&&i+1&&
cout&&&不存在&&&
return 0; }
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Posts - 43,
Articles - 0,
Comments - 0
17:27 by jiaoluo, ... 阅读,
#include &iostream&
#include &vector&
using namespace
void FindTwoNumberWithSum(int data[],unsigned int length,
int sum,int &num1,int &num2)
if(length&=1)
int begin=0;
int end=length-1;
int cur=0;
while(begin&end)
cur=data[begin]+data[end];
if(cur==sum)
num1=data[begin];
num2=data[end];
if(cur&sum)
if(cur&sum)
void FindAnser(int data[],int cur,int sum,int idx,std::vector&int& col,int len)
if(sum&=cur)
if(sum==cur)
std::vector&int&::iterator iter=col.begin();
for(;iter!=col.end();iter++)
cout&&*iter&&" ";
for(int i=i&i++)
col.push_back(data[i]);
FindAnser(data,cur+data[i],sum,i+1,col,len);//看懂这两个地方
col.pop_back();
//看懂这两个地方
int main()
int data[]={4,5,7,10,12};
//int num1,num2;
//FindTwoNumberWithSum(data,sizeof(data)/sizeof(int),12,num1,num2);
//cout&&num1&&" "&&num2&&
std::vector&int&
FindAnser(data,0,22,0,col,sizeof(data)/sizeof(int));
题目:输入一个已经按升序排序过的数组和一个数字, 在数组中查找两个数,使得它们的和正好是输入的那个数字。 要求时间复杂度是O(n)。 如果有多对数字的和等于输入的数字,输出任意一对即可。 & 例如输入数组1、2、4、7、11、15和数字15。由于4+11=15,因此输出4和11。 //由于数组已经过升序排列,所以,难度下降了不少。 //July、
#include &iostream.h&
bool FindTwoNumbersWithSum ( int data[],&&&&&&&&&& // 已经排序的 数组 unsigned int length,& // 数组长度&&&& int sum,&&&&&&&&&&&&& //用户输入的 sum& int& num1,&&&&&&&&&&& // 输出符合和等于sum的第一个数 int& num2&&&&&&&&&&&& // 第二个数 ) {&&& &&& bool found = &&& if(length & 1) &&&&&&& &&& &&& int begin = 0; &&& int end = length - 1; &&& &&& while(end & begin) &&& { &&&&&&& long curSum = data[begin] + data[end]; &&&&&&& &&&&&&& if(curSum == sum) &&&&&&& { &&&&&&&&&&& num1 = data[begin]; &&&&&&&&&&& num2 = data[end]; &&&&&&&&&&& found = &&&&&&&&&&& &&&&&&& } &&&&&&& else if(curSum & sum) &&&&&&&&&&& end--; &&&&&&& else &&&&&&&&&&& begin++; &&& } &&& }
int main() { &&& int x,y; &&& int a[6]={1,2,4,7,11,15}; &&& if(FindTwoNumbersWithSum(a,6,15,x,y) ) &&& { &&&&&&& cout&&x&&endl&&y&& &&& } &&& return 0; } 4 11 Press any key to continue
扩展:如果输入的数组是没有排序的,但知道里面数字的范围,其他条件不变, 如何在O(n)时间里找到这两个数字?
关于第14题, 1.题目假定是,只要找出俩个数,的和等于给定的数, 其实是,当给定一排数, 4,5,7,10,12 然后给定一个数,22。 就有俩种可能了。因为22=10+12=10+5+7。 而恰恰与第4题,有关联了。望大家继续思考下。:)。
2.第14题,还有一种思路,如下俩个数组: 1、 2、& 4、7、11、15&&&& //用15减一下为& 14、13、11、8、4、 0&&&&& //如果下面出现了和上面一样的数,稍加判断,就能找出这俩个数来了。
第一个数组向右扫描,第二个数组向左扫描。怎样用C++找出一个数组中的相同的数的个数??_百度知道
怎样用C++找出一个数组中的相同的数的个数??
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
采纳数:113
获赞数:567
循环就好了,这是最简单的算法。例如数组a为待处理数组。int* b = (int*)malloc(n*sizeof(int));for(int i = 0;i &i++){for(int j = 0;j &j++){if(a[n]==b[j])
b[j]++;}if(j==m)b[m] = 1;m++;}如果需要知道重复的数字是什么,则b定义为结构体数组struct record{int data,int count};
采纳数:32
获赞数:48
一个数组中可能有多对相同的数,是否应传入一个数作为要查找的数int find(int a[] ,int num ,int n)
//num为数组元素个数,n为要查找的数{int count=0;for(int i=0;i&i++){if(a[i]==n)count++;}}}
n是不定的~
是其中的相同的数,可能有多个数的~
你是想实现什么功能,是要把所有的相同的情况都输出吗void find(int arr[] , int num ){for(int i=0;i&n-1;i++){int t= arr[i] ;int n=0;for(int j=i+1;j&n;j++){if(t==arr[j])n++;}cout&&t&&&的个数为&&&n&&}}写的比较烂,效率很低
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。C++中如何在一个二维数组中查找某个值
[问题点数:20分,结帖人lbg617]
本版专家分:0
结帖率 100%
CSDN今日推荐
本版专家分:43482
2011年12月 C/C++大版内专家分月排行榜第一2011年11月 C/C++大版内专家分月排行榜第一2011年10月 C/C++大版内专家分月排行榜第一2010年4月 C++ Builder大版内专家分月排行榜第一2008年9月 C++ Builder大版内专家分月排行榜第一2008年8月 C++ Builder大版内专家分月排行榜第一2007年1月 C++ Builder大版内专家分月排行榜第一2004年3月 C/C++大版内专家分月排行榜第一2006年12月 C++ Builder大版内专家分月排行榜第一
2010年4月 Delphi大版内专家分月排行榜第二2010年3月 C++ Builder大版内专家分月排行榜第二2009年9月 C++ Builder大版内专家分月排行榜第二2005年10月 Java大版内专家分月排行榜第二2006年11月 C++ Builder大版内专家分月排行榜第二2006年10月 C++ Builder大版内专家分月排行榜第二2006年9月 C++ Builder大版内专家分月排行榜第二2006年7月 C++ Builder大版内专家分月排行榜第二2004年1月 C++ Builder大版内专家分月排行榜第二2006年1月 Delphi大版内专家分月排行榜第二
2010年5月 C++ Builder大版内专家分月排行榜第三2006年8月 C++ Builder大版内专家分月排行榜第三2004年2月 C++ Builder大版内专家分月排行榜第三2003年8月 C++ Builder大版内专家分月排行榜第三2006年4月 Delphi大版内专家分月排行榜第三2005年12月 Delphi大版内专家分月排行榜第三
本版专家分:0
本版专家分:1894
本版专家分:43482
2011年12月 C/C++大版内专家分月排行榜第一2011年11月 C/C++大版内专家分月排行榜第一2011年10月 C/C++大版内专家分月排行榜第一2010年4月 C++ Builder大版内专家分月排行榜第一2008年9月 C++ Builder大版内专家分月排行榜第一2008年8月 C++ Builder大版内专家分月排行榜第一2007年1月 C++ Builder大版内专家分月排行榜第一2004年3月 C/C++大版内专家分月排行榜第一2006年12月 C++ Builder大版内专家分月排行榜第一
2010年4月 Delphi大版内专家分月排行榜第二2010年3月 C++ Builder大版内专家分月排行榜第二2009年9月 C++ Builder大版内专家分月排行榜第二2005年10月 Java大版内专家分月排行榜第二2006年11月 C++ Builder大版内专家分月排行榜第二2006年10月 C++ Builder大版内专家分月排行榜第二2006年9月 C++ Builder大版内专家分月排行榜第二2006年7月 C++ Builder大版内专家分月排行榜第二2004年1月 C++ Builder大版内专家分月排行榜第二2006年1月 Delphi大版内专家分月排行榜第二
2010年5月 C++ Builder大版内专家分月排行榜第三2006年8月 C++ Builder大版内专家分月排行榜第三2004年2月 C++ Builder大版内专家分月排行榜第三2003年8月 C++ Builder大版内专家分月排行榜第三2006年4月 Delphi大版内专家分月排行榜第三2005年12月 Delphi大版内专家分月排行榜第三
本版专家分:67244
2013年8月 Linux/Unix社区大版内专家分月排行榜第一2012年11月 Linux/Unix社区大版内专家分月排行榜第一2012年10月 Linux/Unix社区大版内专家分月排行榜第一2012年9月 Linux/Unix社区大版内专家分月排行榜第一2012年7月 Linux/Unix社区大版内专家分月排行榜第一2012年6月 Linux/Unix社区大版内专家分月排行榜第一2012年5月 Linux/Unix社区大版内专家分月排行榜第一2011年11月 Linux/Unix社区大版内专家分月排行榜第一
2013年6月 Linux/Unix社区大版内专家分月排行榜第二2013年5月 Linux/Unix社区大版内专家分月排行榜第二2013年3月 Linux/Unix社区大版内专家分月排行榜第二2013年1月 Linux/Unix社区大版内专家分月排行榜第二2012年12月 Linux/Unix社区大版内专家分月排行榜第二2012年8月 Linux/Unix社区大版内专家分月排行榜第二2011年12月 Linux/Unix社区大版内专家分月排行榜第二2011年10月 C/C++大版内专家分月排行榜第二2011年10月 Linux/Unix社区大版内专家分月排行榜第二
2012年6月 C/C++大版内专家分月排行榜第三2012年6月 PHP大版内专家分月排行榜第三2012年5月 C/C++大版内专家分月排行榜第三2012年3月 Linux/Unix社区大版内专家分月排行榜第三2012年2月 Linux/Unix社区大版内专家分月排行榜第三2011年11月 C/C++大版内专家分月排行榜第三
本版专家分:12
本版专家分:16923
本版专家分:16923
本版专家分:16923
本版专家分:48
本版专家分:437
匿名用户不能发表回复!
其他相关推荐C语言经典面试题:判断一个二维数组中是否包含给定的数字
0人收藏此代码,
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解法:杨氏矩阵的查找,可以分治,但一个比较好的解法是从第一行最后一列开始查找,决定往左还是往下移动。转自:
#include &iostream&
#define N 1024
int a[N][N]={{1,2,8,9},{2,4,9,12},{4,7,10,13},{6,8,11,15}};
int main(int argc,char *argv[])
int m = 4,n = 4,t = 6,r,c;
c = n - 1;
bool find =
while((r & m) && (c &= 0))
if(t == a[r][c])
if(t & a[r][c])
printf(&%d:&,a[r][c]);
puts(find?&存在&:&不存在&);
//该代码片段来自于: http://www.sharejs.com/codes/cpp/6709
相关代码片段:
最新C/C++代码片段
合作网站:}

我要回帖

更多关于 matlab查找元胞数组的数字 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信