전체 코드
#include <iostream>
int main()
{
char c[101];
int N, sum = 0;
std::cin >> N >> c;
for (int i = 0; i < N; i++)
{
sum += (int)c[i] - 48;
}
std::cout << sum;
}
풀이
- char 변수 선언, 숫자개수는 최대 100까지 입력될 예정이므로 다음과 같이 배열 선언
char c[101];
- N번 반복하는 반복문
- sum에 숫자 하나를 더함
- c는 char 타입이므로 int로 형변환->int로 변환하면 아스키 코드 값으로 변하기 때문에 48뺌
for (int i = 0; i < N; i++)
{
sum += (int)c[i] - 48;
}
- 아래는 숫자 아스키코드 문자와 그에 해당하는 값(char 변수를 int로 형변환하면 얻을수 있는 값)
아스키코드문자 |
10진수값 |
'0' |
48 |
'1' |
49 |
'2' |
50 |
'3' |
51 |
'4' |
52 |
'5' |
53 |
'6' |
54 |
'7' |
55 |
'8' |
56 |
'9' |
57 |