用c语言编写函数,判断给定集合 A 和 B 是否具有包含关系。
时间: 2024-04-29 21:22:30 浏览: 99
可以使用以下代码进行判断:
```
#include<stdio.h>
#include<stdbool.h>
bool isSubset(int A[], int B[], int size_A, int size_B){
int i, j;
bool found;
for(i = 0; i < size_B; i++){
found = false;
for(j = 0; j < size_A; j++){
if(B[i] == A[j]){
found = true;
break;
}
}
if(!found){
return false;
}
}
return true;
}
int main(){
int A[] = {1, 2, 3, 4, 5};
int B[] = {2, 4, 5};
int size_A = sizeof(A) / sizeof(A[0]);
int size_B = sizeof(B) / sizeof(B[0]);
if(isSubset(A, B, size_A, size_B)){
printf("B is a subset of A\n");
}
else{
printf("B is not a subset of A\n");
}
return 0;
}
```
在这个例子中,我们通过定义一个`isSubset`函数来判断给定集合`A`和`B`是否具有包含关系。该函数的输入参数包括两个整数数组`A`和`B`,以及它们的大小。该函数的返回值为`true`表示`B`是`A`的子集,`false`表示不是。主函数中我们定义了两个示例集合`A`和`B`来进行测试,运行结果会输出`B is a subset of A`。
阅读全文