▩ C언어 프로그램의 구조


1. C언어 프로그램의 구조와 개행

#include <stdio.h>

void main(){
    printf("abc");
    printf("def\n");
    printf("123\n456\n789\n");
}

/*
abcdef
123
456
789
*/



▩ 자료 출력하기


1. 확장 문자의 이해
   - '\a': 경보음  07
   - '\n': 개행    0A
   - '\t': 탭 코드 09
   - '\000': 8진수
   - '\xhh': 16진수
   - '\0' : 문자 코드 0, null 문자



>>>>> 확장(제어)문자의 사용
 #include <stdio.h>

 void main() {
   printf("\t** 월별 판매 결과 **\n");
   printf("====================================\n");
   printf("품목\t서울\t부산\t광주\t인천\n");
   printf("------------------------------------\n");
   printf("사과\t50\t40\t35\t60\n");
   printf("귤\t60\t80\t75\t35\n");
   printf("배\t55\t44\t33\t77\n");
   printf("------------------------------------\n");
 }




2. 아스키 코드표의 이해
   - 7비트 코드
   - 키보드의 자판은 아스키코드로 대응됨
   - 8번째 비트가 1인경우 한글을 처리하는 로직을 구성 할 수 있음




3. TAB 키의 작동의 이해
   - 탭은 절대 좌표를 사용하며 탭사이즈의 배수 + 1의 위치로 이동함
   - 일반적으로 사이즈는 4를 이용합니다.

123456789012345678901234567890
100            1000
10              100
1               1
1,000          5,000
3,500          3,000




4. 문자열 출력 및 제어 문자 출력하기
   - printf()
     . %d   : 10진 정수 출력
     . %4d  : 출력시 자리수를 지정함 숫자의 크기와 관련 없이 무조건 4자리의 공간을 확보함
                 자리수가 부족해도 정수 부분은 그대로 출력된다. 숫자는 오른쪽 정렬됩니다.
     . %4f  : 실수 출력, 정수 부분이 출력되고 소수는 무조건 6자까지 출력됨
     . %4.0f: 소수점은 출력되지 않음
     . %4.1f: 소수 자릿수 부족시 반올림 실행, 소수점도 자리수에 해당, 정수는 자리수에 관련 없이

                 무조건 출력됨, 정수2자리, 실수1자리
     . %o   : 8진수 출력, 영문 소문자 'o'만 가능
     . %x   : 16진수 출력, %X는 16진수가 대문자로 출력됨


   - putchar() 함수의 사용
     . 한문자를 출력합니다.
     . '': 한문자를 의미
     . "": 문자열을 의미, 실제 보이는 문자보다 null문자가 한자 더 있음('\0')




>>>>> 제어 문자를 통한 출력


 #include <stdio.h>

 void main() {
   int a=5, b=9, c=1235, d=1;
   int e=40, f=549, g=5, h=1160;
   int i=155, j=1249, k=3, m=10;
   float q=12.24f, w=45.265f, r=814.32f, t=369.254f;

   printf("\t** 월별 판매 결과 **\n");
   printf("======================================\n");
   printf("품목\t서울\t부산\t광주\t인천\n");
   printf("--------------------------------------\n");
   printf("사과\t%4d\t%4d\t%4d\t%4d\n", a, b, c, d);
   printf("귤\t%4d\t%4d\t%4d\t%4d\n", e, f,g, h);
   printf("배\t%4d\t%4d\t%4d\t%4d\n", i, j, k, m);
   printf("--------------------------------------\n");
   printf("금액\t%4.1f\t%4.1f\t%4.1f\t%4.1f\n", q, w, r, t);
   printf("--------------------------------------\n");
 }




5. 변환문자를 통한 출력 함수: printf(변환 문자열 목록)
   - %o      : int            <-- 8진수로 출력
   - %d      : int            <-- 10진수로 출력
   - %ld     : long int, int  <-- 긴 정수형 10진수 출력
   - %x, %X  : int            <-- 16진수 출력, 대소문자 구분 출력
   - %f      : float, double  <-- 실수 출력, 9.f는 반올림이 되어 출력이 됨

                                          소수점은 자리수로 포함이 됨
   - %e, %E  : float, double  <-- 실수를 지수 형식으로 출력, 1.234560e+03, 1.234560e-03
   - %c      : char, int      <-- 한 문자 출력
   - %s      : char *, 배열   <-- 문자열, 배열 출력




>>>>> 진수 변환하여 출력하기


#include <stdio.h>

 void main() {
   int a=511;

   printf("원래의 값은 %d입니다.\n", a);
   printf("8진수의 값은 %o입니다.\n", a);
   printf("16진수의 값은 %X입니다.\n", a);
   printf("1을 더한 값은 %d입니다.\n", a+1);
   printf("8진수의 값은 %o입니다.\n", a+1);
   printf("16진수의 값은 %X입니다.\n", a+1);
   printf("2를 더한 값은 %d입니다.\n", a+2);
   printf("8진수의 값은 %o입니다.\n", a+2);
   printf("16진수의 값은 %X입니다.\n", a+2);
 }

 /*
 10 Base   2 Base   8 Base   16 Base
 -------------------------------------
 0            0        0         0
 1            1        1         1
 2           10        2         2
 3           11        3         3
 4          100        4         4
 5          101        5         5
 6          110        6         6
 7          111        7         7
 8         1000       10         8
 9         1001       11         9
 10        1010       12         A
 11        1011       13         B
 12        1100       14         C
 13        1101       15         D
 14        1110       16         E
 15        1111       17         F
 16       10000       20        10
 
*/




>>>>> 단일문자의 출력


 #include <stdio.h>

 void main() {
   putchar('K');
   putchar('o');
   putchar('r');
   putchar('e');
   putchar('a');
   printf("\n");
   putchar('S');
   putchar('e');
   putchar('o');
   putchar('u');
   putchar('l');
   printf("\n");
 }

Posted by 나비:D
:
BLOG main image
by 나비:D

공지사항

카테고리

분류 전체보기 (278)
Programming? (0)
---------------------------.. (0)
나비의삽질 (5)
Application (177)
SQL (51)
Web (27)
etc. (14)
Omnia (0)
---------------------------.. (0)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

달력

«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Total :
Today : Yesterday :