본문 바로가기
Program Language/C#

Part1. C# 첫발 내딛기(9. Console.WriteLine() - 3)

by 토담이아빠 2022. 12. 28.

Console.WriteLine() - 3

 

Console.WriteLine()에 대한 3번째 포스팅입니다. 이번에는 형식지정자를 사용하는 방법에 대해 정리했습니다.


형식지정자를 사용한 Console.WriteLine 메소드

 

형식지정자는 Axx 형태로 표현됩니다. 여기서 A는 형식이고, xx는 정밀도입니다. 정밀도는 0~99까지 자릿수를 지정할 수 있습니다. 정밀도는 지정하지 않아도 되며 지정하지 않을 시 디폴트 정밀도가 적용됩니다.

다음은 가장 많이 사용되는 표준 숫자 형식 지정자입니다.


형식 지정자 이름 정밀도 지정자 사용 예
"C" or "c" 통화 십진 자릿수 123.456("C") -->₩123
123.456("C3") -->₩123.456
"D" 또는 "d" 십진수(정수) 최소 자릿수 1234("D") --> 1234
1234("D6") --> 001234
"E" 또는 "e" 지수(과학) 소수 자릿수 1052.0329112756("E") --> 1.052033E+003
-1052.0329112756("e2") --> -1.05e+003
"F" 또는 "f" 고정  자릿수 소수 자릿수 1234.567("F") --> 1234.57
-1234.56("F4") --> -1234.5600
"G" 또는 "g" 일반 유효자릿수 -123.456("G") --> -123.456
123.4546("G4") --> 123.5
"N" 또는 "n" 천단위 구분 기호 숫자 소수 자릿수 1234.567("N") --> 1,234.57
-1234.56("N3") --> -1,234.560
"P" 또는 "p" 퍼센트 소수 자릿수 1("P") --> 100.00%
-0.39678("P1") --> -39.7%
"R" 또는 "r" 라운드트립 무시됨 1234567.12345("R") --> 1234567.12345
"X" 또는 "x" 16진수 자릿수 255("X") --> FF
255("x4") --> 00ff

다음 예제는 정수 -12345678과 실수 -1234.5678을 9가지 형식지정자를 사용하여 출력하고 정밀도 지정자와 혼합하여 사용하는 방법입니다.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleFormat
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Console.Clear();

            //형식 지정자 사용
            Console.WriteLine("Standard Numeric Format Specifiers");
            Console.WriteLine(
                "(C) Currency : .............{0:C}\n" +
                "(D) Decimal : ..............{0:D}\n" +
                "(E) Scientific : ...........{1:E}\n" +
                "(F) Fixed point : ..........{1:F}\n" +
                "(G) General : ..............{0:G}\n" +
                "(N) Number : ...............{0:N}\n" +
                "(P) Percent : ..............{1:P}\n" +
                "(R) Round-trip : ...........{1:R}\n" +
                "(X) Hexadecimal : ..........{0:X}\n",
                -12345678, -1234.5678f);

            //정밀도 지정자 사용
            decimal value = 123456.789m;
            Console.WriteLine("잔액은 {0:C2}원 입니다.", value);

            //전체 20자리를 차지하고 통화 형식으로 소수점 아래 두자리 출력
            Console.WriteLine("잔액은 {0,20:C2}원 입니다.", value);
        }
    }
}

결과


[Review]

"초보자를 위한 C# 200제(2판)"  저자 / 강병익

댓글