设A={a,b,c,d},其中: R={(a,a),(a,b),(b,b),(b,c),(c,b),(a,c),(c,a),(c,c),(b,a),(d,d)}。C语言实现关系矩阵的计算
时间: 2023-12-21 20:03:56 浏览: 57
以下是C语言实现关系矩阵计算的代码,其中使用了二维数组来表示关系矩阵:
```c
#include <stdio.h>
int main() {
char A[] = {'a', 'b', 'c', 'd'};
int R[4][4] = {{1, 1, 0, 0},
{0, 1, 1, 0},
{1, 1, 1, 0},
{0, 0, 0, 1}};
int C[4][4] = {0}; // 初始化为0
// 计算关系矩阵
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
for (int k = 0; k < 4; k++) {
C[i][j] = C[i][j] || (R[i][k] && R[k][j]);
}
}
}
// 输出关系矩阵
printf("关系矩阵:\n");
printf(" ");
for (int i = 0; i < 4; i++) {
printf("%c ", A[i]);
}
printf("\n");
for (int i = 0; i < 4; i++) {
printf("%c ", A[i]);
for (int j = 0; j < 4; j++) {
printf("%d ", C[i][j]);
}
printf("\n");
}
return 0;
}
```
阅读全文