1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include <stdio.h> int main () { int N; char array[100]; int sum = 0; scanf("%d",&N); scanf("%s",array); for(int i = 0; i < N; i++) { sum += array[i] - 48; } printf("%d",sum); return 0; } | cs |
char배열에 %c로 넣을때와 %s로 넣을 때 값이 달랏음
%s로 넣으니 ASCII 코드가 되어서
48부터 0으로 시작되는 ASCII 코드 특징상
48을 빼주면 숫자가 된다.
다른 블로그를 참조하니 다들 %s로 입력받는 건 동일하였고,
12번 째 줄을 sum += array[i] - '0' 으로 한게 다른 점이엇다 정도?
사용 메모리는 변함이 없어서 큰 상관이 없는 것 같다.
'옛날' 카테고리의 다른 글
[5d] 9498 : 시험 점수 (0) | 2018.04.06 |
---|---|
[4d] 11721 : 열 개씩 끊어 출력하기 (NEED FIX) (0) | 2018.04.05 |
[2d] 10952 : A+B - 5 (0) | 2018.04.03 |
[2d] 10950 : A+B - 3 (0) | 2018.04.03 |
[2d] 2439 : 별찍기 - 2 (0) | 2018.04.03 |