题目描述 给你两个序列,长度相等 请找出两个序列中共同出现的元素 由于有多种输出方式,这里我们要求按照所有共同出现的元素从小到大顺序输出,如果重复多次,也只用输出一次,如果一个共同出现的数都没有,输出0即可。 题目保证序列中的元素一定是正整数 输入 第一行一个正整数t,表示有t组数据 每一组第一行一个正整数n,表示序列的长度,序列长度不超过100 每一组第二行和第三行分别为两个序列的元素,序列中每个元素都不超过100, 输出 每一组数据输出两个序列中共同出现的元素 用c语言数组写代码
时间: 2023-11-22 21:54:28 浏览: 120
```c
#include <stdio.h>
int main() {
int t;
scanf("%d", &t);
while (t--) {
int n;
scanf("%d", &n);
int a[100], b[100], count[101] = {0};
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
count[a[i]]++; // 统计数字出现次数
}
for (int i = 0; i < n; i++) {
scanf("%d", &b[i]);
count[b[i]]++; // 统计数字出现次数
}
int flag = 0; // 标记是否有共同元素
for (int i = 1; i <= 100; i++) {
if (count[i] >= 2) { // 如果出现次数大于等于2,则说明是共同元素
printf("%d ", i);
flag = 1;
}
}
if (!flag) printf("0"); // 如果没有共同元素,则输出0
printf("\n");
}
return 0;
}
```
阅读全文