C언어의 출력타입을 알아보자

  1. %d : 10진수(정수형)
  2. %f : 실수형
  3. %e : 지수형
  4. %o : 8진수
  5. %x : 16진수
  6. %u : 부호 없는 10진수
  7. %g : 실수형 자동출력
  8. %p : 포인터의 주소
  9. %c : 하나의 문자로 출력
  10. %s : 문자열 

 

Escape Sequence (특수 문자)

특수 문자 특수 문자 의미 
'\n' New Line : 새로운 줄로 이동
'\r' 줄의 처음으로 이동
'\b' 한 문자 왼쪽으로 이동 
'\t' 탭 만큼 이동 
'\\' \문자 자체를 화면에 출력
'\',\"' 뒤에 "," 표시 출력
'\?' 물음표 표시 출력 

 

1.  a의 주소를 알아보기

#include <stdio.h>
// asterisk 용도 
// 1. 포인터를 선언할 때
// 2. 나중에
int main(){
    int a = 5;
    int* ptr;

    ptr = &a;

    // & -- < ampersand

    printf("address of a is %p", &a);

    return 0;
}

실행결과 

address of a is 0x7ffee8e06688

2.  Int, float, char의 크기를 알아보기.

#include <stdio.h>

int main(){
printf("Integer size : %d\n", sizeof(int));
printf("Float size : %d\n", sizeof(float));
printf("Char size : %d\n", sizeof(char));
}

실행결과

Integer size : 4
Float size : 4
Char size : 1

3.  Int, float, char의 포인터의 크기를 알아보기.

#include <stdio.h>

int main(){
printf("Integer* size : %d\n", sizeof(int*));
printf("Float* size : %d\n", sizeof(float*));
printf("Char* size : %d\n", sizeof(char*));
}

실행결과

Integer* size : 8
Float* size : 8
Char* size : 8

4.  a의  주소와 포인터를 통해 a의 값을 알아보기.

#include <stdio.h>

int main(){

int a= 5;
int* ptr;
ptr = &a;
printf("address of a is %p", &a);
printf("\nvalue of a is %d", *ptr);

}

실행결과

address of a is 0x7ffee0c1768c
value of ptr is 5

5.  포인터를 활용하여 b-a 값 도출하기.

#include <stdio.h>

int main(){

int a= 5;
int b= 10;

int* ptr;
int* ptr2;

ptr = &a;
ptr2 = &b;

printf("b - a = %d ", *ptr2-*ptr);

}

실행결과

b - a = 5

6. 포인터 이용하여  a와 b의 값 스왑하기.

#include <stdio.h>

void swap (int* num1, int* num2){

int temp;
// 스왑 부분

temp = *num1;
*num1 = *num2;
*num2 = temp;

}

int main(){

int a = 5;
int b = 10;

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

swap(&a,&b);

printf("\n\nafter swap\n\n");
printf("a=%d\nb=%d",a,b);
}

실행결과 

a=5
b=10

after swap

a=10
b=5

7. 포인터 이용하여 

#include <stdio.h>

int main(){

	char arr[6] = {"hello"};
    
    char* ptr;
    ptr = &arr[0];
    
    printf("%c", *ptr);
    
    return 0;
}

실행결과 
h

#include <stdio.h>

int main(){

	char arr[6] = {"hello"};
    
    char* ptr;
    ptr = &arr[0];

// 연산자의 순서

    printf("%c\n", *(ptr+1));
    printf("%c", ptr[1]);
    
    return 0;
}

실행결과
e
e

#include <stdio.h>

int main(){

	char arr[6] = {"hello"};
    
    char* ptr;
    ptr = &arr[0];

// 연산자의 순서

    printf("%c\n%c\n%c\n%c\n%c", *ptr,*(ptr+1),*(ptr+2),*(ptr+3),*(ptr+4));
    
    return 0;
}

실행결과

h
e
l
l
o

C언어 - switch case break 가위바위보 랜덤

#include <stdio.h>
#include <time.h>
#include <stdlib.h>


int main (void){
    srand(time(NULL));
    int i = rand() % 3;
    switch (i)
    {
        case 0: printf("가위\n"); break;
        case 1: printf("바위\n"); break;
        case 2: printf("보\n"); break;
        default: printf("몰라요\n"); break;
    }
    return 0;
}

switch case 그리고 break 

+ Recent posts