#8821 : 적고 지우기
[코드]
[코드설명]
① main
0과 9의 개수를 저장하기 위해 num_list 배열, 문자열을 받기 위해 str 배열을 선언했다. num_list 배열은
숫자의 개수를 저장해야 하기 때문에 값을 0으로 바꿨다.
str[i]의 값을 c에 하나씩 받고, 문자를 숫자로 바꾸기 위해 c의 값에서 48을 뺐다. 그리고 조건 연산자를 사용해서 num_list[c]의 값이 0일 경우 1을 1일 경우 0을 반환하도록 하고, 그 값을 num_list[c]에 저장했다.
while문이 끝나면 num_list의 합을 sum에 저장하고, t와 sum을 출력하도록 했다.
[실행결과]
#8741 : 두문자어
[코드]
[코드설명]
① main
scanf는 공백을 받아들이지 않기 때문에 gets함수로 문자열을 받았다. str에서 대문자로 바꾼 문자는 upr 배열에 저장하려고 한다.
for문에서 c가 공백이면 gap의 값을 1로 바꾸고 다음 반복으로 넘어가게 했다. 만약 gap이 1이라면 이전 c값이 공백이므로 현재 c가 단어의 첫번째 문자라는 것을 알 수 있다. 따라서 이때 c의 값을 32를 빼서 대문자로 바꾸고, upr[j]에 넘긴다음 j의 값을 1증가시켜야 한다. 모든 과정을 수행 후 gap을 0으로 바꿔야 한다.
while문이 끝나면 upr[j]에 '\0'값을 넣어서 문자열을 완성시킨다.
[실행결과]
'알고리즘' 카테고리의 다른 글
C 과제 1/2 (0) | 2021.01.11 |
---|---|
[BOJ] 10809/10773 (0) | 2021.01.07 |
[SWEA] 8888/8840 (0) | 2020.11.20 |
[SWEA] 10912/9229 (0) | 2020.11.11 |
[SWEA] 10059/9700 (0) | 2020.11.06 |