/*
*Copyright (c)2013,烟台大学计算机学院
*All rights reserved.
*文件名称:test.cpp
*作者:孙玲倩
*完成日期:2013年12月13日
*版本号:v1.0
*问题描述:判断两个有序数组中是否含有相同数字。
*/
#include <iostream>
using namespace std;
bool existthesame ( int *a,int n1,int *b,int n2 );
int main()
{
int a[]={1,4,7,8};
int b[]={2,5,6,9,10};
int n1=sizeof (a)/sizeof(a[0]);
int n2=sizeof(b)/sizeof (b[0]);
bool flag = existthesame (a,n1,b,n2);
if (flag==true)
cout <<"两个有序数组中存在相同的数字!\n";
else
cout <<"两个有序数组中不存在相同的数字!\n";
return 0;
}
bool existthesame (int *a,int n1,int *b,int n2)
{
bool flag =false;
int i,j;
for(i=0;i<n1;i++)
{
for (j=0;j<n2;j++)
{
if (*(a+i)==*(b+j))
{
flag=true;
break;
}
}
}
return flag;
}
心得体会:有点难,不是很好理解。