急!!!C语言:输出两组数组中相同的数字
有两组数据,分别包含m和n个整数。每组数据中的整数不重复且按由小到大次序排列。请输出所有在两组数据中同时存在的整数。如果没有这样的数,则输出"NO"请放心,(1)每组数据...
有两组数据,分别包含m和n个整数。每组数据中的整数不重复且按由小到大次序排列。 请输出所有在两组数据中同时存在的整数。如果没有这样的数,则输出"NO" 请放心,(1)每组数据中的整数不重复且按由小到大次序排列,你无需检查,也不必排序。
输入描述
先输入m和n的值,分别表示两组数据的个数,然后输入第一组数据的m个整数,以及第二组数据的n个整数。
输出描述
输出所有在两组数据中同时包含的整数。
样例输入
5 7
5 9 17 123 698
7 8 9 16 17 92 698
样例输出
9 17 698 展开
输入描述
先输入m和n的值,分别表示两组数据的个数,然后输入第一组数据的m个整数,以及第二组数据的n个整数。
输出描述
输出所有在两组数据中同时包含的整数。
样例输入
5 7
5 9 17 123 698
7 8 9 16 17 92 698
样例输出
9 17 698 展开
展开全部
//示例代码如下
#include <stdio.h>
#include <stdlib.h>
int main()
{
int m,n,i,j,flag=0;
int *pm,*pn;
scanf("%d%d",&n,&m);
pm=(int*)malloc(sizeof(int)*m);
pn=(int*)malloc(sizeof(int)*n);
for(i=0;i<m;i++)
scanf("%d",pm+i);
for(i=0;i<n;i++)
scanf("%d",pn+i);
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
if(pm[i] == pn[j]){
printf("%d ",pn[j]);
flag=1;
}
}
if(!flag)
printf("NO\n");
printf("\n");
free(pm);
free(pn);
return 0;
}
//示例运行结果
F:\c_work>a.exe
5 7
5 9 17 123 698
7 8 9 16 17 92 698
9 17 698
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个问题使用二重循环就可以解决的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询