河北工业大学离散实验

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

离散数学实验报告学院:计算机科学与软件学院班级:姓名:学号:实验二关系闭包计算一.目的与要求:熟悉Warshall算法,掌握求关系的自反闭包、对称闭包和传递闭包的方法。二.实验内容:从键盘输入一个关系的关系矩阵,计算其自反闭包、对称闭包和传递闭包,计算传递闭包时使用Warshall算法。用C语言实现。三.实验步骤:1.输入关系矩阵2.计算自反闭包、对称闭包、传递闭包。3.输出结果;四.源程序:1./*求自反闭包*/#include#includeintmain(){intx,y,ii;*对称闭包的运算*/#include#defineN3voidmain(){inta[N][N];inti,j,jj;printf(请输入关系矩阵。);for(i=0;iN;i++)for(j=0;jN;j++)scanf(%d,&a[i][j]);printf(你输入的关系矩阵为\n);for(i=0;iN;i++){for(j=0;jN;j++)printf(%3d,a[i][j]);printf(\n);}printf(\n);/*求对称闭包*/for(j=0;jN;j++)for(i=0;iN;i++)if(a[i][j]==1){for(jj=0;jjN;jj++)a[i][jj]=a[i][jj]||a[j][jj];}/*输出矩阵*/printf(对称闭包为:\n);for(i=0;iN;i++){for(j=0;jN;j++)printf(%3d,a[i][j]);printf(\n);}printf(\n);}3./*传递闭包的运算*/#include#defineN3voidmain(){inta[N][N];inti,j,jj;printf(请输入关系矩阵。);for(i=0;iN;i++)for(j=0;jN;j++)scanf(%d,&a[i][j]);printf(你输入的关系矩阵为\n);for(i=0;iN;i++){for(j=0;jN;j++)printf(%3d,a[i][j]);printf(\n);}printf(\n);/*求传递闭包*/for(j=0;jN;j++)for(i=0;iN;i++)if(a[i][j]==1){for(jj=0;jjN;jj++)a[i][jj]=a[i][jj]||a[j][jj];}/*输出矩阵*/printf(传递闭包为:\n);for(i=0;iN;i++){for(j=0;jN;j++)printf(%3d,a[i][j]);printf(\n);}printf(\n);}五、运行结果

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功