본문 바로가기
알고리즘 스터디/코드업 기초100제 - C

[CodeUp] 코드업 기초 100제 C - 문제 1012~1022 - 문자열 입출력

by 레일라오리덕 2021. 5. 4.
728x90

[1012 문제]

 

#include <stdio.h>

main(){
    float x;
    scanf("%f", &x);
    printf("%f", x);
}

 

[1013 문제]

 

#include <stdio.h>

main(){
    int a, b;
    scanf("%d%d", &a, &b);
    printf("%d %d", a, b);
}

입력받은 값을 printf에서 띄어쓰기를 해주면 공백이 포함되어 출력된다.

 

[1014 문제]

 

#include <stdio.h>

main(){
    char x, y;
    scanf("%c %c", &x, &y);
    printf("%c %c", y, x);
}

입력받은 값을 printf에서 순서를 바꿔주면 바뀐 순서대로 출력된다.

 

[1015 문제]

 

#include <stdio.h>

main(){
    float x;
    scanf("%f", &x);
    printf("%.2f", x);
}

printf에서 %f가 아닌 %.2f라고 표기하면 소수점 이하 셋째 자리에서 반올림하여 소수점 이하 둘째자리까지 출력된다.

 

[1017 문제]

 

#include <stdio.h>

main(){
    int x;
    scanf("%d", &x);
    printf("%d %d %d", x, x, x);
}

 

[1018 문제]

 

#include <stdio.h>

main(){
    int a, b;
    scanf("%d:%d", &a, &b);
    printf("%d:%d", a, b);
}

scanf() 함수는 지정한 형식에 따라 입력받는 함수로, 입력받고자 하는 형식으로 표현해주면 된다.

 

[1019 문제]

 

#include <stdio.h>

main(){
    int y, m, d;
    scanf("%d.%d.%d", &y, &m, &d);
    printf("%04d.%02d.%02d", y, m, d);
}

%02를 입력하면 2칸을 사용해서 출력하는데, 입력받은 값이 한 자리수인 경우에는 앞에 0을 붙여 2자리수로 만들어서 출력되어진다.

 

[1020 문제]

 

#include <stdio.h>

main(){
    int a, b;
    scanf("%d-%d", &a, &b);
    printf("%06d%07d", a, b);
}

 

728x90

 

[1021 문제]

 

#include <stdio.h>

main(){
    char data[51]="";
    scanf("%s", data);
    printf("%s", data);
}

 

★문자를 50개 저장하기 위해서는 char data[51]로 선언하면된다.

 

[1022 문제]

 

#include <stdio.h>

main(){
    char data[2001]="";
    fgets(data, 2000, stdin);
    printf("%s", data);
}

 

★★여기서 사용된 fgets함수는 file get string을 의미하는데, 인수로는 키보드를 의미하는 stdin을 준다.

이 함수를 사용하는 이유는 메모리 침범을 보호하고 예방하기 위해서이다.

정해진 길이의 메모리만을 사용하기 위해 사용되는 함수이다.

728x90

댓글