https://www.acmicpc.net/problem/11720

숫자의 자리 수가 최대 100자리이기 때문에 문자열로 받아줘야합니다.

#include <stdio.h>

int main(void) {
    int n = 0;
    int sum = 0;
    char str[101];
    scanf("%d%100s", &n, str);
    for(int i = 0; i < n; i++) {
        sum += str[i] -48;
    }
    printf("%d", sum);
}

100자리의 문자열 만들어주시고,

scanf로 입력 받은 다음

미리 n을 입력받아서 몇자리인지 확인이 되어있기 때문에 for문으로 0번째부터 n - 1 번째 배열에 있는 수를 전부 더해주면 됩니다.

 

아스키코드에서 숫자는 - 48 을 해주면 원하는 숫자를 구할 수 있습니다.

+ Recent posts