/* 2. 다음 프로그램의 출력을 써라. */ #include <stdio.h> #define MALE (1<<0) #define TALL (1<<1) #define RICH (1<<2) #define CUTE (1<<3) #define SMART (1<<4) int number[5] = { 1, 2, 3, 4, 5 }; // 여기를 바꿀 것 class Person { public: char data; Person() { data = 0; } void set(unsigned char mask) { data = data | mask; } void reset(unsigned char mask) { data = data & (~mask); } void am() { if (data == SMART) printf("똑똑하고 "); else printf("멍청하고 "); if (data == CUTE) printf("잘생기고 "); else printf("못생기고 "); if (data == RICH) printf("부자고 "); else printf("가난하고 "); if (data == TALL) printf("키큰 "); else printf("키도작은 "); if (data == MALE) printf("여자.\n"); else printf("남자.\n"); } }; void main() { Person I; for(int n = 0; n < 5; n++) { if (number[n]/2*2 == number[n]) { I.set(1<<n); } else { I.reset(1<<n); } } I.am(); }