1. 程式人生 > >邏輯運算子 題型

邏輯運算子 題型

////1.5位運動員參加了10米臺跳水比賽,有人讓他們預測比賽結果 
////A選手說:B第二,我第三;
////B選手說:我第二,E第四;
////C選手說:我第一,D第二;
////D選手說:C最後,我第三;
////E選手說:我第四,A第一;
////比賽結束後,每位選手都說對了一半,請程式設計確定比賽的名次。
////思路:這題是要求對於5個人說的話進行真假判斷,由於這5個人說的話只有50%的概率
////正確,所以我們採取邏輯或進行判定,最後可以將這5個人說的話通過與在進行判斷是
////否等於1,如果等於1那麼則說明是真,輸出他們的值。
//#include<stdio.h>
//#include<stdlib.h>
//int main() {
//	int A = 0;
//	int B = 0;
//	int C = 0;
//	int D = 0;
//	int E = 0;
//	//對於這5個人他們每個人分別有5種情況,所以通過迴圈表示
//	for(A=1;A<=5;A++)
//		for(B=1;B<=5;B++)
//			for(C=1;C<=5;C++)
//				for(D=1;D<=5;D++)
//					for (E = 1; E <= 5; E++) {
//						if ((B == 2 || A == 3) && (B == 2 || E == 4) && 
//							(C == 1 || D == 2) && (C == 5 || D == 3) 
//							                   && (E == 4 || A == 1) == 1) {
//							printf("A=%d,B=%d,C=%d,D=%d,E=%d\n", A, B, C, D, E);
//						}
//					}
//	system("pause");
//	return 0;
//}

////2.日本某地發生了一件謀殺案,警察通過排查確定殺人凶手必為4個
////嫌疑犯的一個。以下為4個嫌疑犯的供詞。
////A說:不是我。
////B說:是C。
////C說:是D。
////D說:C在胡說
////已知3個人說了真話,1個人說的是假話。
////現在請根據這些資訊,寫一個程式來確定到底誰是凶手。
////思路:根據要求只有三個人說的是真話,通過ASCII碼遍歷對他們進行判斷,如果為真則加
////1操作,當加到3的時候就表示這種情況可以,那麼則輸出;
////總共有4人分別為A,B,C,D對他們的ASCII碼進行判定
////在進行判斷的時候真用1表示,假用0表示。
//#include<stdio.h>
//#include<stdlib.h>
//int main() {
//	int criminal = 0;
//	for (criminal = 'A'; criminal <= 'D'; criminal++) {
//		if ((criminal != 'A') + (criminal == 'C') + (criminal == 'D') 
//			+ (criminal != 'D')==3) {
//			//說明只有一個條件為假
//			printf("凶手是:%c", criminal);
//		}
//	}
//	system("pause");
//	return 0;
//}

//3.在螢幕上列印楊輝三角。 
//1
//1 1
//1 2 1
//1 3 3 1
//思路:將楊輝三角形放在一個矩陣裡面,這樣的話可以通過行列的關係得到每個位置
//的元素值
#include<stdio.h>
#include<stdlib.h>
int main() {
	int a[3][3] = { 1 };
	int i = 0;
	int j = 0;
		for (i = 0; i <= 3; ++i) {
			a[i][0] = 1;//每一行的首元素都為0
			for (j = 1; j <= i; j++) {
					a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
			}
		}
		for (i = 0; i <= 3; ++i) {
			for (j = 0; j <= i; j++) {
					printf("%d", a[i][j]);
			}
			printf("\n");
		}
	system("pause");
	return 0;
}