티스토리 뷰
문제.
N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.
입출력.
첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. 입력으로 주어진 숫자 N개의 합을 출력한다.
#include <stdio.h>
int main() {
//문제11720 / 2021.02.26
int cnt, sum=0;
char n;
scanf("%d",&cnt);
getchar();
for(int i=0; i<cnt; i++){
scanf("%c", &n);
sum+=(n-48);
}
printf("%d\n",sum);
return 0;
}
Insight.
이번에도 입력 함수의 버퍼를 사용해보려고 했는데 그럼 정수형을 사용했을 때, 한 개의 숫자로 인지해서 한 자리씩 가져올 수 없었다. 그래서 char형으로 하나씩 가져와서 -48을 해주고 원하는 숫자가 나오도록 하고 합을 구했다. char형은 연산이 되니까.. 그리고 횟수 다음에 개행문자가 버퍼에 저장되어 있어서 그 다음 입력에 영향이 있기래 getchar()를 사용해서 버퍼를 비워줬다.
그리고 C언어는 진짜... 진짜 가볍고 빠르구만....
'Computer Science > 백준 알고리즘' 카테고리의 다른 글
[백준.04673-C언어] 셀프 넘버 (0) | 2021.03.01 |
---|---|
[백준.1단계-JAVA] 입출력과 사칙연산 (0) | 2021.02.27 |
[백준.01157-C언어] 단어 공부 (0) | 2021.02.25 |
[백준.08958-C언어] OX퀴즈 (0) | 2021.02.24 |
[백준.11508-C언어] 2+1 세일 (0) | 2021.02.23 |
댓글