3-谁做的好事——循环枚举

用if-else语句,如果有400人,程序得多长?

循环语句

让计算机循环执行一些代码指令

image

image

image

/*
谁是做好事的人呢?三个人说的是真话,一个人是假话
A:不是我 good_man != 'A'
B:是C good_man == 'C'
C:是D  good_man == 'D'
D:他胡说 good_man != 'D'
答案:C是做好事的人
*/
#include <iostream>
using namespace std;

int main() {
	char good_man;

	for (good_man = 'A'; good_man <= 'D'; good_man++) 
	{
		int count = 0;			// 说真话的人数
		if (good_man != 'A')	// A说了真话
			count++;
		if (good_man == 'C')	// B说了真话
			count++;
		if (good_man == 'D')	// C说了真话
			count++;
		if (good_man != 'D')	// D说了真话
			count++;
		if (count == 3){		// 有3个人说了真话
			cout << good_man << endl;	// 输出做好事的人
			break;
		}
	}
	return 0;
}
  • 枚举很重要
  • 枚举往往通过循环实现
  • 合理巧妙设计表达式123
  • 依次不遗漏的枚举所有可能答案
posted @ 2022-11-20 15:16  彩红caihong  阅读(48)  评论(0)    收藏  举报