离散数学编程作业
编写程序,打印输出9种基本逻辑运算符(与、或、非、条件、双条件、异或、与非、或非、条件否定)的运算表到字符文件logic.txt中。
编程目的:学会用程序语言提供的基本逻辑运算功能实现所有9种逻辑运算。
//Discrete Mathematics
#include
#include
#include
void yu();//有能力的同学用英语写函数名
void huo();
void fei();
void tiaojian();
void shuangtiaojian();
void yihuo();
void yufei();
void huofei();
void tiaojianfouding();
//FILE *freopen(const char *path, const char *mode, FILE *stream);int main(){freopen("D:\\logic.txt","w",stdout);//将控制台的内容写入D:中的logic.txt(这里因人而异)yu();huo();fei();tiaojian();shuangtiaojian();yihuo();yufei();huofei();tiaojianfouding();fclose(stdout);//关闭文件return 0;
}void yu(){int i, j, t = 0;printf("------------------\n");printf("P\tQ\t与\n");printf("------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){t = i&j;printf("%d\t%d\t%d\n", i, j, t);}printf("------------------\n");printf("\n");
}void huo(){int i, j, t = 0;printf("------------------\n");printf("P\tQ\t或\n");printf("------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){t = i|j;printf("%d\t%d\t%d\n", i, j, t);}printf("------------------\n");printf("\n");
}void fei(){int i, t = 0;printf("----------\n");printf("a\t非\n");printf("----------\n");for (i = 0; i <= 1; i++){t = ~i + 2;printf("%d\t%d\n", i, t);}printf("----------\n");printf("\n");
}void tiaojian(){int i, j, t = 0;printf("--------------------\n");printf("a\tb\t条件\n");printf("--------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){t = (~i + 2)|j;printf("%d\t%d\t %d\n", i, j, t);}printf("--------------------\n");printf("\n");
}void shuangtiaojian(){int i, j;printf("----------------------\n");printf("a\tb\t双条件\n");printf("----------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){if(i == j)printf("%d\t%d\t %d\n", i, j, 1);elseprintf("%d\t%d\t %d\n", i, j, 0);}printf("----------------------\n");printf("\n");
}void yihuo(){int i, j, t = 0;printf("--------------------\n");printf("a\tb\t异或\n");printf("--------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){t = i^j;printf("%d\t%d\t %d\n", i, j, t);}printf("--------------------\n");printf("\n");
}void yufei(){int i, j, t = 0;printf("--------------------\n");printf("a\tb\t与非\n");printf("--------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){t = ~(i&j) + 2;printf("%d\t%d\t %d\n", i, j, t);}printf("--------------------\n");printf("\n");
}void huofei(){int i, j, t = 0;printf("--------------------\n");printf("a\tb\t或非\n");printf("--------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){t = ~(i|j) + 2;printf("%d\t%d\t %d\n", i, j, t);}printf("--------------------\n");printf("\n");}void tiaojianfouding(){int i, j, t = 0;printf("------------------------\n");printf("a\tb\t条件否定\n");printf("------------------------\n");for (i = 0; i <= 1; i++)for (j = 0; j <= 1; ++j){t = ~((~i + 2)|j) + 2;printf("%d\t%d\t %d\n", i, j, t);}printf("------------------------\n");printf("\n");
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
