2013-09-02 3 views
-2

저는 C 언어의 초보자이며 다음 코드 샘플을 작성했습니다.복잡하지 않은 코드 샘플이 작동하지 않습니다.

#include <stdio.h> 
#include <stdlib.h> 
int main() { 
    int count=0; 
    while(true) { 
     char card_name[3]; 
     puts("Enter the card name"); 
     scanf("%2s",card_name); 
     int val=0; 
     switch(card_name[0]) { 
     case 'k': 
      val=10; 
      break; 
     case 'q': 
      val=10; 
      break; 
     case 'p': 
      val=10; 
      break; 
     case 'a': 
      val=11; 
      break; 
     case 'X': 
      break; 
     default: 
       val=atoi(card_name); 
       if (val<2 || val>10) { 
        continue; 
       } 
       break; 
     } 

     if ((val>2) && (val<7){ 
      count++; 
     }    
     printf("The current count is: %i",count); 
    } 
    return 0; 
} 

하지만 작동하지 않습니다. 누구든지 그것을 고치는 법을 압니다. 컴파일러에서 발견 한 오류는 switch 끝과 그 뒤에 오는 if 문 사이에 누락 된 {이 있다는 것입니다.

+5

'경우 ((발> 2) && (발 <7)) {'<- 누락 괄호 –

+0

오 당신이 말할 때 " 작동하지 않습니다. "라는 말은"컴파일하지 않습니다 "라는 의미입니다. 그리고 컴파일러 오류 메시지를 게시하지 마십시오! 큰! 좋은 질문. – trojanfoe

+0

투표 결과는 닫혔습니다. 친애하는 포스터, 컴파일러가보고 한 오류를 읽지 않았습니까? – Dariusz

답변

2
if ((val>2) && (val<7)) 
         ^^^ close the bracket 
1

라인

if ((val>2) && (val<7){ 

해야

if ((val>2) && (val<7)) { 
관련 문제