inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바 프로그래밍 입문 강좌 (renew ver.) - 초보부터 개발자 취업까지!!

특수 문자와 서식 문자

printf로 %를 출력하는방법

해결된 질문

4596

haon

작성한 질문수 6

0

안녕하세요. 제가 어떤분의 질문을 답변하다 궁금한점이 생겼습니다.

c언어에서는 출력할때 항상printf를 사용하잖아요?(자바강좌에서 질문하여 죄송합니다.)

구구단같은 연산코드에서는 대부분이 이런코드를 사용할거라고생각합니다.

printf("%d * %d = %d", n, i, n * i); //구구단
printf("%d + %d = %d", a, b, a + b) //"기본"

그래서 나머지연산자에서도 똑같을거라고 생각했는데 

printf("%d", a % b);

와같이 설명(?)이 생략됐거나 "나머지"같은 문구로 바꿔져있었습니다.

https://dojang.io/mod/page/view.php?id=106

http://mwultong.blogspot.com/2007/01/c-modulus-operator-get-remainder.html

제 질문이 뭐냐면 

System.out.printf("%d % %d = %d", 20, 3, 20 % 3); //예상출력: 20 % 3 = 2

같은 서식출력코드에서 %는 출력가능하냐?입니다.

답변해주면감사합니다.

자바 java printf 이스케이프시퀸스

답변 1

1

김현지

안녕하세요, haon님!

C언어에서 printf() 함수에는 "퍼센트 기호(%)"가 포맷 출력을 위해 특수한 의미로 사요됩니다.

따라서 printf()문 안에 퍼센트 기호 한 번만 작성하면 %가 출력되지 않습니다.

퍼센트 기호 자체를 출력하기 위해서는 %를 두 번 중복해서 사용해주어야 출력됩니다.

따라서, %% 처럼 기호 두 번에 퍼센트 기호가 하나 출력됩니다.

printf("%\n");    // 출력 안됨

printf("%%\n");    // % 하나 출력 (%)

printf("%%%%\n");    // % 두개 출력 (%%)

printf("%%%%%%\n");    // % 세개 출력 (%%%)

위와 같이 사용됩니다.

즉, % 출력을 위해서는 두 개씩 사용해주면 됩니다.

혹시 궁금하신 점이 있다면 댓글 남겨주세요.

도움이 되었으면 좋겠습니다. :)

0

haon

감사합니다.

다른기호는앞에 \백슬래시를 붙이면돼는데 %는 두개사용해야 출력이 되내요

서식 문자 실습 중 콘솔 결과값 글자 깨짐

0

572

1

19-4 : super 클래스 부분에서

0

392

1

비트를 뒤에서부터 읽으셔서 궁금해서 질문드립니다!

1

667

1

배열예제 오류

0

403

1

GC 동작시기가 궁금합니다.

0

382

0

자바 18버전으로 다운받아도 되나요?

0

543

1

클래스 생성과 관련하여 질문 있습니다

0

273

0

형변환시 신규 메모리가 할당 되는지

0

353

0

Socket을 null로 처음에 선언해주는 이유가 뭘까요?

0

305

0

반환값 용도

0

346

1

블로그 작성

0

321

0

삼항연산자 잘못 적으셨어요

0

267

1

어느것부터 다운로드를 해야하는지 좀 막히네요

0

360

1

inputStream.read()질문드립니다

0

330

1

System.out.println("i + j = " + (i+j); 이렇게 쓰는 이유가 뭔가요? " "i + j " = (i +j)라고 쓸수 있는거 아닌가요?

0

371

1

<for문> 예시 작성시 에러발생 질문드립니다

0

584

2

이해가 안가는 부분이 있습니다.. 선생님들.. 도와주세요..!!

0

321

1

인터페이스를 사용 하는 이유가 무엇인가요?..

0

747

1

혹시 영상 만드시고 업로드 전 확인 안하시나요..? 잡음..

1

307

1

이해가 안가는게 있습니다

0

318

2

jdk-16.0.1은 jre가 없이 jdk만 설치되는게 정상인가요?

0

501

1

메모장을 실행하실때

0

320

1

강의 중 말씀해주신 형변환된 코드가 알고 싶어요.

0

241

2

메모장이안돼요 처음에

0

281

0