모두의 코드 커뮤니티

바보같은 질문해서 죄송합니다

예제 코드에서 a+b, a와 b를 더한다는 것은 a의 값과 b의 값을 더하는 것인가요?
예제 코드:https://modoocode.com/8에 있는 코드
/* 산술 연산 */
#include <stdio.h>
int main() {
int a, b;
a = 10;
b = 3;
printf(“a + b 는 : %d \n”, a + b);
printf(“a - b 는 : %d \n”, a - b);
printf(“a * b 는 : %d \n”, a * b);
printf(“a / b 는 : %d \n”, a / b);
printf(“a %% b 는 : %d \n”, a % b);
return 0;
}

어디까지 공부를 하시고 질문하는 것인지 알 수 없어 어떤 부분에 대해 답변을 달아야 할지 모르겠습니다만…

우선 a, b 등은 정수값(…-2, -1, 0, 1, 2…)이 들어갈 수 있는 일종의 방(변수)의 이름(변수명)입니다. 따라서 질문하신 것처럼 a + b는 변수 a의 값과 변수 b의 값을 더하라는 의미가 됩니다. 코드상으로는 10 + 3이 되겠지요.

그런데 코드에 보면 큰따옴표(" ") 안에도 a + b가 있습니다. 이 큰 따옴표 안은 하나의 덩어리 문장(문자열)이라고 생각하시면 됩니다. 따라서 이 안에서의 a나 b는 변수명이 아니라 알파벳 문자 a와 b를 의미합니다. 위 코드를 실행하면 콘솔 첫 줄에 "a + b 는 : 10"이라고 출력될 텐데 이 출력의 "a + b 는 : "란 문자열이 큰따옴표 안에서 지정된 거지요. 큰따옴표 안의 "%d"는큰따옴표 안의 전체 덩어리를 출력할 때 일종의 빈칸으로 무엇인가가 그 자리에 들어가서 출력할 내용이 확정된다는 것이며, 이때 d는 이 자리에 들어오는 것이 정수값임을 의미합니다. "\n"은 출력할 때는 보이지 않는 문자로 문장 덩어리를 출력한 다음 엔터(줄 바꿈)을 출력한다는 의미입니다.

질문보다 긴 답변을 달아서 좀 민망하네요. 도움이 되셨길.

1 Like