본문 바로가기
컴퓨터/C, C++

[C/C++] 백준 11720번 C언어

by stdFrog 2022. 5. 19.

백준 11720번

 

N개의 숫자가 공백 없이 쓰여있다.

이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.

첫째 줄에 숫자의 개수 N( 1 <= N <= 100 )이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

입력으로 주어진 숫자 N개의 합을 출력한다.

 

#include <stdio.h>

int atoi2(char *ar);

int main()
{
        int N, S=0;
        char ar[101]={0,};

        scanf("%d", &N);
        for(int i=0; i<1; i++){
                scanf("%s", &ar[i]);
        }
        S=atoi2(ar);
        printf("%d", S);
}

int atoi2(char *ar){
        int i=0, S=0;
        while(ar[i]!='\0'){
                S+= ar[i]-'0';
                ++i;
        }
        return S;
}

 

입력은 공백없이 한 줄에 다 쓰이기 때문에 %s로 받는다.

저번 strlen2와 비슷하게 구현해서 풀었는데 atoi2 함수의 예외 처리가 필요할 수 있으나 해당 문제에선 합격 처리된다.

 

ASCII코드 표를 참고하면 어떻게 구한 것인지 알 수 있다.

반응형

'컴퓨터 > C, C++' 카테고리의 다른 글

[C/C++] 백준 2675번 C언어  (0) 2022.05.21
[C/C++] 백준 10809번 C언어  (0) 2022.05.19
[C/C++] 백준 4344번 C언어  (0) 2022.05.17
[C/C++] 백준 8958번 C언어  (0) 2022.05.17
[C/C++] 백준 1546번 C언어  (0) 2022.05.16

댓글