c语言查找相同元素,C语言程序经典示例—-(21)寻找相同元素的指针
/*[函数]在已知两个从小到大有序的数表中寻找都出现的第一个元素的指针*/
# NULL 0
int *(int *pa,int *pb,int an,int bn)
int *ca,*cb;
ca=pa;cb=pb;/*为ca、cb设定初值*/
while(ca
/*在两个数表中找下一个相等的元素*/
if(*ca
ca++;/*调整数表1的当前元素指针*/
else if(*ca>*cb)/*数表1的当前元素>数表2的当前元素*/
cb++;/*调整数表2的当前元素指针*/
else/*数表1的当前元素==数表2的当前元素*/
/*在前两个数表中找到相等元素*/
ca;/*返回在这两个数表中找到相等元素*/
NULL;
main( )/*只是为了引用函数( )*/
int *vp,i;
int a[ ]={1,3,5,7,9,13,15,27,29,37};
int b[ ]={2,4,6,8,10,13,14,27,29,37};
();
puts(“The of array a is:”);
for(i=0;i
(” %d”,a[i]);
puts(“nThe of array b is:”);
for(i=0;i
(” %d”,b[i]);
vp=(a,b, a/ a[0], b/ b[0]);
if(vp) (“nThe first same in both is %dn”,*vp);
else (“Not found!n”);
puts(“n Press any key to quit…n”);
getch();