inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

연산자와 기출문제

섹션 2. 11강 3분 12초

해결된 질문

38

maritime23

작성한 질문수 4

0

printf("a%%b = %d\n", remainder_result);

에서 왜 %% 가 들어가는데 출력값은 a%b=1 인건가요?

a%%b = 1 이 아닌 이유가 있나요~?

python java c 정보처리기사

답변 2

2

주말코딩

안녕하세요,

이건 그냥 암기하셔야 하는 부분입니다.

C언어의 printf안의 문자열에서 직접 %라는 단어를 출력하기 위해서는 %%로 입력해야합니다.

 

보통 %d, %c와 같이 뒤의 변수를 특정 형태로 출력하는 명령어로 퍼센트 기호를 쓰고 있기 때문에

함수에게 "나는 이번에는 출력형태가 아니라 진짜로 %라는 단어를 출력하고 싶어"라는 뜻으로

%%라고 명시해야합니다.

1

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. maritime23님.

printf 함수에서 사용하는 %%는 실제로 % 문자를 출력하고자 할 때 사용합니다. printf는 특별한 포맷 문자를 인식하기 위해 %를 사용하는데, 이때 %%를 사용하면 특별한 처리 없이 % 자체가 출력됩니다.

따라서 printf("a%%b = %d\n", remainder_result);"a%b"를 그대로 출력하며, remainder_result의 값이 %d 위치에 삽입되어 a%b = 1란 형식으로 그 결과값이 출력됩니다. 이 경우 a%b는 나머지 연산자를 나타내는 것이 아니라 순수한 문자열로 해석됩니다.

유사한 질문을 다룬 게시물을 참고하시면 더 도움이 되실 수 있습니다:
- printf 함수에서 ‘%’ 사용 방법

좀 더 자세한 설명을 제공하기 위해 유사한 topic에 대한 설명도 덧붙여봅니다.
% 기호는 printf에서 형식을 나타내기 위해 사용되며, 실제 % 문자를 출력하기 위해서는 %%를 사용하게 됩니다. 그러므로 a%%b에서 첫 번째 %는 출력을 위한 기호이고, 두 번째 %% 문자를 의미하게 됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

11강 3:20

0

1

1

10강 11:42

0

3

1

9강 26:23

0

12

1

9강 23:46

0

8

0

코드 중간에 . 붙은건 뭐라고 봐야할까요?

0

20

2

설명중 단어 의미 해석 문제.

0

14

1

수강 섹션마다 옆에 자료 다운로드 버튼이 있는데. 다운받으면 무슨내용이 있는건가요?

0

9

1

SQL 집중학습

0

21

1

NULL과 0

0

19

2

26년 1회 기출문제 11번 질문드립니다

0

23

1

업캐스팅 문제예시5 & 업캐스팅 문제 예시 6

0

27

1

V1.2 VS V.091

0

35

2

split('T')일때는 T만 제거되는거고 공백은 제거되지 않는 건가요?

0

39

2

파이썬 언어 업데이트, 언어별 학습자료 업데이트

0

43

2

C, java, python 언어 기출문제 강의 질문

0

38

2

1:26 에서 반복문 i[1] 이니까 0 다음 두번째 항목들 아닌가요

0

39

2

d

0

40

2

출력값

0

37

2

(기출) 2023년 3회 코드해석 문제의 1:10입니다.

0

42

2

23년도 2회 c언어 0:03 n[(i+6)%5] 도 가능한건가요?

0

45

2

정처기 질문

0

49

2

자식 기본 생성자 출력 조건

0

39

2

부모 및 자식 기본생성자 호출

0

43

2

포인터 16강 9:44

0

32

1