设计以下问题的算法:
己知命题p和q的真值,求它们的合取、析取、异或、条件语句和双条件语句的真值。给出程序设计,建议用自定义函数或过程,完成各个算法的程序。
任务难度:易
真值表:
代码如下:
#includevoid hequ(int a,int b){//合取 int i=0; if(a==1&&b==1){ i=1; }else{ i=0; } printf("a ∩ b = %dn",i); } void xiqu(int a,int b){//析取 int i=0; if(a==1||b==1){ i=1; }else{ i=0; } printf("a ∪ b = %dn",i); } void yihuo(int a,int b){//异或 int i=0; if((a==1&&b==1)||(a==0&&b==0)){ i=0; } else{ i=1; } printf("a ⊕ b = %dn",i); } void tiaojianyuju(int a,int b){//条件语句 int i=0; if(a==1&&b==0){ i=0; }else{ i=1; } printf("a → b = %dn",i); } void shuangtiaojianyuju(int a,int b){//双条件语句 int i=0; if((a==1&&b==1)||(a==0&&b==0)){ i=1; }else{ i=0; } printf("a ←→ b = %dn",i); } int main(){ int p,q; printf("请输入p的真值(0/1):"); scanf("%d",&p); printf("请输入q的真值(0/1):"); scanf("%d",&q); hequ(p,q); xiqu(p,q); yihuo(p,q); tiaojianyuju(p,q); shuangtiaojianyuju(p,q); return 0; }
小白写博客,有问题请各位大佬指正,谢谢!



