怎样实现数组中的查找问题?

ratrat 2001-10-02 04:33:41
怎样在int a[]中查找元素,判断int a[]中是否同时含有元素int a1,int a2?
请大侠指点莱鸟。
...全文
199 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
阎罗 2001-10-03
  • 打赏
  • 举报
回复
QQ5895561
ratrat 2001-10-02
  • 打赏
  • 举报
回复
谢谢你!能给个联系方式吗?
阎罗 2001-10-02
  • 打赏
  • 举报
回复
LD520就不要加分了,那是我的另一个号码
ratrat 2001-10-02
  • 打赏
  • 举报
回复
谢谢各位,散分。
LD520 2001-10-02
  • 打赏
  • 举报
回复
if(a[i]==a1) nfound1=true;(1)
if(a[i]==a2) nFound2 = false;(2)
如果按你说的只含a2不含a1的话,(1)就返回false(2)也返回false
则nFound1&&nFound2返回的是false

ratrat 2001-10-02
  • 打赏
  • 举报
回复
To bobfallen(流水) :if(nFound1&&nFound2)我的理解是,当同时有int a1,int a2时return true;当只有int a1,int a2其中之一时,return false; 但这有一种情况只含有
int a2,而不含有int a1.我的前提条件是含有元素int a1,同时不能含有int a2,因此,我
觉的不妥.我是初手,不对请指正.

阎罗 2001-10-02
  • 打赏
  • 举报
回复
for(i=0;i<nLength;i++)这条循环语句就是用来查找数组中是否含有a1和a2
if(a[i]==a2)这就遍历了所有数组中的元素
ratrat 2001-10-02
  • 打赏
  • 举报
回复
这几个return1,2,3的返回判断值是怎样的
ratrat 2001-10-02
  • 打赏
  • 举报
回复
bobfallen(流水) 的解答只是不同时含有元素int a1,int a2。
我的意思是xzou(缺齿小狼)的几个选择。
xzou 2001-10-02
  • 打赏
  • 举报
回复
to oyxiaoyu0(小雨仔)
不查找一遍怎么知道有没有a2?
oyxiaoyu0 2001-10-02
  • 打赏
  • 举报
回复
那你就可以直接查找int1了吗不用查找int2了吗
if (a[i]==int1)
breake
else
continue
ratrat 2001-10-02
  • 打赏
  • 举报
回复
对,是这个意思。
阎罗 2001-10-02
  • 打赏
  • 举报
回复
for(i=0;i<nLength;i++)
{
if(a[i]==a1) nFound1 = true;
if(a[i]==a2) nFound2 = false;

if(nFound1&&nFound2)
return true;
}
return false;
xzou 2001-10-02
  • 打赏
  • 举报
回复
是不是这个意思?
BOOL bFound1=false;
BOOL bFound2=false;
for(i=0;i<nLength;i++)
{
if(a[i]==a1) nFound1 = true;
if(a[i]==a2) nFound2 = true;
if(nFound1&&nFound2)
return 0; //含有a1,a2
}
if(nFound1)
retuen 1; //含有a1,不含a2
if(nFound2)
retuen 2; //含有a2,不含a1
return 3; //不含a1,a2
阎罗 2001-10-02
  • 打赏
  • 举报
回复
楼上两位说的很好,如果含有int a1的同时不含int a2的话,那么就是说
nfound1&&nfound2 返回false证明这个数组里不同时含有这两个元素
ratrat 2001-10-02
  • 打赏
  • 举报
回复
我的意思是判断int a[]中含有元素int a1的同时不能含有int a2,怎样判断?
给出完整例子,好吗?答者均有分,马上送出,谢谢!
xzou 2001-10-02
  • 打赏
  • 举报
回复
如果在含有int a1的同时不含有int a2的话,nFound1&&nFound2就等于false了,返回错误呀
ratrat 2001-10-02
  • 打赏
  • 举报
回复
如果在含有int a1的同时不含有int a2的话,就不能用nFound1&&nFound2,又该怎么办?
oyxiaoyu0 2001-10-02
  • 打赏
  • 举报
回复
来晚了!同意楼上二位!
xzou 2001-10-02
  • 打赏
  • 举报
回复
BOOL bFound1=false;
BOOL bFound2=false;
for(i=0;i<nLength;i++)
{
if(a[i]==a1) nFound1 = true;
if(a[i]==a2) nFound2 = true;
if(nFound1&&nFound2)
return true;
}
return false;
加载更多回复(3)

69,336

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧