fork download
  1. #include <stdio.h>
  2.  
  3. void statusview(char status){
  4. char* str[] = {"", "毒", "麻痺", "石化", "混乱", "沈黙"};
  5. if(!status){
  6. printf("状態異常なし\n");
  7. return;
  8. }else if(status & 1){
  9. printf("終了\n");
  10. return;
  11. }
  12. int i;
  13. for(i = 0; status; status>>=1, ++i)
  14. if(status & 1)printf("%s ", str[i]);
  15. printf("\n");
  16. }
  17. int main(void){
  18. int n;
  19. char now = 0;
  20. do{
  21. printf("1:毒 2:麻痺 3:石化 4:混乱 5:沈黙 6:全回復 0:終了\n");
  22. scanf("%d", &n);
  23. if(n == 6) now = 0;
  24. else now |= 1<<n;
  25. statusview(now);
  26. }while(n);
  27. }
  28.  
Success #stdin #stdout 0.01s 1724KB
stdin
1
5
6
0
stdout
1:毒 2:麻痺 3:石化 4:混乱 5:沈黙 6:全回復 0:終了
毒 
1:毒 2:麻痺 3:石化 4:混乱 5:沈黙 6:全回復 0:終了
毒 沈黙 
1:毒 2:麻痺 3:石化 4:混乱 5:沈黙 6:全回復 0:終了
状態異常なし
1:毒 2:麻痺 3:石化 4:混乱 5:沈黙 6:全回復 0:終了
終了