实现如下 #include using namespace std; class list{ public: int A[20],B[20],U[20],I[20]; int k,s,m,i,n,j; void Union(); void Inter(); void setA(); void setB();
}; void list::setA() { cin >> m; for (i = 0; i < m; i++) { cin >> A[i]; }
} void list::setB() { cin >> n; for (i = 0; i < n; i++) { cin >> B[i]; } } void list::Union()//并集 { int s,k = m; for (i = 0; i < m; i++) { U[i] = A[i]; } for (i = 0; i < n; i++) { s = 1; for (j = 0; j < m; j++) { if (U[j] == B[i]) { s = 0; } } if (s == 1) { U[k] = B[i]; k++; } } for (i = 0; i < k; i++) { cout << U[i] ; }
} //交集 void list::Inter() { int k = 0; for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { if (A[i] == B[j]) { k++; I[k-1] = A[i]; }
} } for (i = 0; i < k; i++) { cout << I[i] ; }}
int main() { char i; list l; while (1) { cin >> i; if (i == ‘E’) { break; } switch(i) { case ‘A’: l.setA(); break; case ‘B’: l.setB(); break; case ‘U’: l.Union(); break;
case 'I': l.Inter(); break; } }}