用c++实现:原型为 bool Find intNum (int all,int n,int x)的函数完成如下功能:在 n 个整数中查找是否有与参数 x的值相等的数,若有则返回 True,否则返回 False。 设有两个各含 10个元素的整数集合 al和a2,编写主函数 main 和函数 Find intNum,在 main 函数中通过调用函数 Find intNum 实现这两个集合是否相等的判断。集合 al 和a2 的元素值由键盘输入,如果 al 和 a2 相等,则在屏幕输出“两个集合相等!”:否则输出“两个集合不相等!”。
时间: 2024-02-27 08:57:53 浏览: 106
C++实践Time类中的运算符重载参考方法
这是一道和之前问题相同的题目,我会给出另一种实现方式:
```C++
#include <iostream>
#include <algorithm>
using namespace std;
bool FindIntNum(int *all, int n, int x) {
for (int i = 0; i < n; i++) {
if (all[i] == x) {
return true;
}
}
return false;
}
int main() {
int a1[10], a2[10];
cout << "请输入集合a1的元素值:" << endl;
for (int i = 0; i < 10; i++) {
cin >> a1[i];
}
cout << "请输入集合a2的元素值:" << endl;
for (int i = 0; i < 10; i++) {
cin >> a2[i];
}
sort(a1, a1 + 10);
sort(a2, a2 + 10);
if (equal(a1, a1 + 10, a2)) {
cout << "两个集合相等!" << endl;
} else {
cout << "两个集合不相等!" << endl;
}
return 0;
}
```
主要思路是先定义一个函数 FindIntNum,用于在一个整数集合中查找是否有与参数 x 的值相等的数。然后在主函数中分别输入两个集合的元素值,并使用 `sort` 函数对两个集合进行排序,最后使用 `equal` 函数来判断两个集合是否相等。如果两个集合相等,则输出“两个集合相等!”,否则输出“两个集合不相等!”。
阅读全文