공부 1일차

고영도·2021년 11월 18일
0

codeup 100제 풀이를 시작했다.

오늘은 코드업 기초 100제 8문제를 풀었으며 8문제를 총 13번에 걸쳐 풀었으며, 이 중 2번의 오답제출과 1번의 실행 중 에러, 2번의 컴파일 에러가 있었다. 정답률은 61.5%이고, 오답률은 15.4%이다. 컴파일 에러와 실행 중 에러의 횟수를 줄이는 것을 목표로 해야겠다.
1. 문자 1개가 입력된다.
(단, 입력되는 문자는 알파벳 대, 소문자 및 숫자를 비롯한 아스키코드로 표현할 수 있는 문자들만 입력된다.)
위의 문제 요구사항을 제대로 읽지 않고 %s를 사용하였으며 이는 입력타입과 출력타입의 사용방법을 제대로 인지하고 있지 않아서 생긴 일이였다.
ps.
%d{10진수(정수형)}, %f(%.nf){실수형},%e(지수형),%o(8진수),%x(16진수),%u(부호없는 10진수), %g(실수형 자동출력), %p(포인터의 주소), %c{하나의 문자로 출력(아스키코드표현)}, %s (문자열)

  1. scanf를 scnaf로 써서 사용하였다.
    프로그래밍에서 오타는 생각보다 빈번하게 일어나며, 이를 제대로 확인하지 않으면 안된다.

  2. 복수의 변수 선언에서 ","사용을 하지 않았다
    두개의 변수를 선언하는 과정에서 ,를 사용하지 않고 선언하였다.
    ex) int a b; (x) =>> int a, b; (o)
    정말 기초가 많이 부실하다는 것을 느꼈다. 꾸준한 코딩문제 풀이를 하며 익숙해져야겠다.

  3. 2개의 정수를 scanf로 입력받을 때 입력 기준과 출력 기준이 같아야함을 몰랐다.
    시간의 형태로 입력받아 (ex / 12:30) 그대로 출력하는 문제였는데 (codeup 1018번)
    2개의 입력을 나누는 기준을 ":"로 하였기 때문에 출력에도 같이 ":"를 사용해줘야하는 것을
    몰랐다.
    int main() {
    int hour, min;
    scanf("%d:%d",&hour,&min);
    printf("%d:%d",hour,min);
    return 0;
    }

profile
Hellow world!

0개의 댓글