728x90
반응형

숫자의 합

 

문제

N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.

입력

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

출력

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
 
int main()
{
    int N;
    int sum = 0;
    scanf("%d",&N);
    char array[N];
    scanf("%s",array);
    for(int i=0; i<N; i++){
        sum+=array[i]-'0';
    }
    printf("%d",sum);
    
    
}
cs

입력받은 N 의 크기를 가진 문자열이 필요하다.

array는 문자열값이 저장되는 위치를 가리키고 있고, %s를 통해서 array에 문자열을 입력받는다.

9번째 줄까지 작동했다면

array[N] 에는 공백이 없는 숫자로 이루어진 문자열이 있을 것이다. 이제 각각의 자리에 있는 숫자들을 더해줘야 한다.

for 문을 사용해서 배열 각 자리 마다의 숫자를 더해준다.

이때 char 형식을 다시 int 형으로 바꿔야 하는데,

char 각각은 아스키코드로 변형되어 출력될 수 있다.

따라서 각 자리 숫자마다 '0' 을 빼 줌으로서

입력한 그대로의 수가 출력될 수 있도록 한다.

 

 

 

 

 

반응형

'백준 단계별로 풀어보기 > 문자열' 카테고리의 다른 글

백준 2908 상  (0) 2022.10.03
백준 1152 단어의 개수  (0) 2022.10.03
백준 1157 단어 공부  (0) 2022.10.02
백준 2675 문자열 반복  (0) 2022.10.02
백준 11654 아스키 코드  (0) 2022.09.18
728x90
반응형

아스키 코드 성공

문제

알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오.

입력

알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다.

출력

입력으로 주어진 글자의 아스키 코드 값을 출력한다.

 

#include <stdio.h>

int main(){

     char input;
     scanf("%s",&input);

     printf("%d",input);
}

 

반응형

'백준 단계별로 풀어보기 > 문자열' 카테고리의 다른 글

백준 2908 상  (0) 2022.10.03
백준 1152 단어의 개수  (0) 2022.10.03
백준 1157 단어 공부  (0) 2022.10.02
백준 2675 문자열 반복  (0) 2022.10.02
백준 11720 숫자의 합  (0) 2022.09.28

+ Recent posts