#include <iostream>
using namespace std;
const int Max_Length = 10;
int main()
{
int arr[Max_Length];
int brr[Max_Length];
int i, j;
int crr[Max_Length]; // 用于存储交集
int crrLength = 0;
// 输入数组arr
for (i = 0; i < Max_Length; i++) {
cout << "请输入整型数组arr中第" << (i + 1) << "个元素:";
cin >> arr[i];
if (arr[i] == 0) break; // 输入0结束输入
}
int arrLength = i; // 实际输入的元素个数
// 输入数组brr
for (j = 0; j < Max_Length; j++) {
cout << "请输入整型数组brr中第" << (j + 1) << "个元素:";
cin >> brr[j];
if (brr[j] == 0) break; // 输入0结束输入
}
int brrLength = j; // 实际输入的元素个数
// 计算交集
for (i = 0; i < arrLength; i++) {
for (j = 0; j < brrLength; j++) {
if (arr[i] == brr[j]) {
bool alreadyInCrr = false;
for (int k = 0; k < crrLength; k++) {
if (crr[k] == arr[i]) {
alreadyInCrr = true;
break;
}
}
if (!alreadyInCrr) {
crr[crrLength] = arr[i];
crrLength++;
}
break; // 找到交集元素后退出内层循环
}
}
}
// 对交集进行排序
for (i = 0; i < crrLength - 1; i++) {
for (j = i + 1; j < crrLength; j++) {
if (crr[i] > crr[j]) {
int temp = crr[i];
crr[i] = crr[j];
crr[j] = temp;
}
}
}
// 输出交集
if (crrLength > 0) {
cout << "两个整形数组的交集从小到大的排序为:";
for (i = 0; i < crrLength; i++) {
cout << crr[i] << " ";
}
cout << endl;
}
return 0;
}