정수형 int x,y,z 를 선언하였다. 정수형 int x,y 에는 계산 할 두 정수의 입력값을, z에는 정수를 계산한 계산값을 저장하고 정수형으로 표현 할 것이다. 또한 char은 문자형으로서 char order에 사칙연산을 대입 할 것이다. 연산기호 또한 문자에 포함된다. 변수의 이름은 사람마다 개인차가 있으며 꼭 예제처럼 변수 이름을 따라 할 필요는 없다. 여담으로 코드가 매우 길어지고 변수를 많이 사용 할 수록 프로그래머가 변수 이름을 무엇으로 정해야할지 많은 고민을 한다고 한다. printf는 텍스트를 출력해주는 함수이다. ex) printf("hello world!"); 또한 printf("값 : %d", sum)은 풀어쓰자면, 값 : (정수를 표현) , sum(에서 값을 받아옴) 을 의미한다. 만약 sum이 아니라 x를 기입했다면 변수 x의 값을 가져오게 된다. scanf는 입력을 가능하게 하고, 입력값을 변수에 저장시킬 수 있는 함수이다. (물론 더 많은 용도로 사용될 수 있다) ex) scanf("%d",&a); scanf 다음에 printf와 동일하게 괄호와 큰따옴표를 열고 닫아주어야만 한다. %d 는 정수를 입력받겠다는 것을 의미하고, &a는 변수 a의 주소를 의미하는 것이다.
이런 식으로.. if와 else, else if는 "1"(진실) 혹은 "0"(거짓)으로 결과가 달리 나타나는 함수이다. if (만약에)( a == 10 ) 이면 printf("값은 10이다.",sum) 이런 식으로 표현이 가능하다. 또한 else if는 else if ( a == 1) 이면 1이라는 값을 입력했을 때, printf("값은 1이다.",sum) 처럼 if와 동일하게 사용이 가능하다. 하지만 주의해야 할 점은 프로그램은 위에서 아래로 실행되고 따라서 if문의 실행 순서는 항상 if 로 시작하게 된다. else는 if와 else if 모두 거짓인 경우 실행된다. 예제를 예를 들어 설명해보겠다. 만약 char order 변수에 사칙연산이 아닌 다른 값 ?를 입력하였다고 가정하자. ?는 if와 else if 모두 포함되지 않기 때문에 if와 else if 조건이 참이 되지 않기 때문에, 계산을 하지 않는다. 이러할 때 else문을 사용하여 else printf("지원하는 연산자가 아닙니다") 이런 식으로 표현이 가능하다. 더 자세하게 설명하자면 if ( a == 10) { printf("값은 10이다.",sum) } else if ( a == 1) { printf("값은 1이다.",sum) } else { printf("known",sum) } 이런 식으로 구성한다면, 10을 입력하게 된다면 "값은 10이다"라는 텍스트가 출력되고 1을 입력하게 된다면 "값은 1이다"라는 텍스트가 출력된다. 하지만 1과 10이 아닌 모든 수 "ex) 음수 양수 2~9 , 11 ~ inf" 는 "known"이라는 텍스트가 출력 될 것이다. 따라서 예제의 사칙연산 계산기는 if와 else if를 연산자 4개를 사용하였고 그 이외의 다른 기호를 기입하게 된다면 if문이 정상적으로 실행이 되지 않는다. 앞서 설명하였듯이 프로그램은 위에서 아래로 실행되며 if에서 참이 되지 않으면 else if로 넘어가게 되고 else if 또한 참이 되지 않으면 (있다면) 다음 else if문으로 넘어가는 것을 계속 반복한다. else문은 if와 else if 그 어떠한 경우에도 참이 되지 못하는 경우 실행되는 것이다. 공지 목록
|