編程內(nèi)容及要求:
編寫程序,打印輸出9種基本邏輯運算符(與、或、非、條件、雙條件、異或、與非、或非、條件否定)的運算表到字符文件logic.txt中。
編程語言可選擇C、C++、Java或Python。
邏輯運算表輸出格式示例:
------------------文章來源:http://www.zghlxwxcb.cn/news/detail-420131.html
?P ??Q ???條件否定
------------------
?T ??T ???F
?T ??F ???T
?F ??T ???F
?F ??F ???F
------------------
輸出的字符文件logic.txt內(nèi)容(粘貼):
------------------
?P ??Q ???與運算
------------------
?F ??F ??????F
?F ??T ??????F
?T ??F ??????F
?T ??T ??????T
------------------
------------------
?P ??Q ???或運算
------------------
?F ??F ??????F
?F ??T ??????T
?T ??F ??????T
?T ??T ??????T
------------------
------------------
?P ???非運算
------------------
?F ??????T
?T ??????F
------------------
------------------
?P ??Q ???條件運算
------------------
?F ??F ??????T
?F ??T ??????T
?T ??F ??????F
?T ??T ??????T
------------------
------------------
?P ??Q ???雙條件運算
------------------
?F ??F ??????T
?F ??T ??????F
?T ??F ??????F
?T ??T ??????T
------------------
------------------
?P ??Q ???異或運算
------------------
?F ??F ??????F
?F ??T ??????T
?T ??F ??????T
?T ??T ??????F
------------------
------------------
?P ??Q ???與非運算
------------------
?F ??F ??????T
?F ??T ??????T
?T ??F ??????T
?T ??T ??????F
------------------
------------------
?P ??Q ???或非運算
------------------
?F ??F ??????T
?F ??T ??????F
?T ??F ??????F
?T ??T ??????F
------------------
------------------
?P ??Q ???條件否定運算
------------------
?F ??F ??????F
?F ??T ??????F
?T ??F ??????T
?T ??T ??????F
------------------
源程序代碼:文章來源地址http://www.zghlxwxcb.cn/news/detail-420131.html
#include <stdio.h>
int main()
{
FILE *fp;
fp = fopen("logic.txt", "w"); // 打開文件
if (fp == NULL) { // 文件打開失敗
printf("文件打開失敗!\n");
return 1;
}
// 輸出與運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 與運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = p && q;
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
// 輸出或運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 或運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = p || q;
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
// 輸出非運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P 非運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
int result = !p;
char ch_1=p ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c\n", ch_1, ch_3);
}
fprintf(fp, "------------------\n\n");
// 輸出條件運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 條件運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = p ? q : 1;
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
// 輸出雙條件運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 雙條件運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = (p && q) || (!p && !q);
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
// 輸出異或運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 異或運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = p ^ q;
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
// 輸出與非運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 與非運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = !(p && q);
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
// 輸出或非運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 或非運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = !(p || q);
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
// 輸出條件否定運算表
fprintf(fp, "------------------\n");
fprintf(fp, " P Q 條件否定運算\n");
fprintf(fp, "------------------\n");
for (int p = 0; p <= 1; p++) {
for (int q = 0; q <= 1; q++) {
int result = !(p ? q : 1);
char ch_1=p ?'T':'F';
char ch_2=q ?'T':'F';
char ch_3=result ?'T':'F';
fprintf(fp, " %c %c %c\n", ch_1, ch_2, ch_3);
}
}
fprintf(fp, "------------------\n\n");
fclose(fp); // 關閉文件
printf("邏輯運算表已輸出到文件 logic.txt 中!\n");
return 0;
}
到了這里,關于離散數(shù)學編程作業(yè)--打印輸出邏輯運算表的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!