#include <iostream>
#include <stdio.h>
int main() {
char str[101], copy[101];// \0까지 저장
int i,p =0;
//scanf("%s",str); 공백 입력 못받음
gets(str);
for(i = 0; str[i] != '\0'; i++){
if(str[i] != ' '){
if(str[i] >=65 && str[i] <= 90)
{
copy[p++] = str[i] + 32;
}else copy[p++] = str[i];
}
}
copy[p] = '\0';
printf("%s",copy);
return 0;
}
성찰
- 공백 입력에 대한 문제는 gets함수로 대체한다. scanf는 공백입력을 못받는다. 그리고 \0저장을 위해 배열크기 하나 크게 선언하자
- 배열을 copy해야 하는 경우에는 꼭 index 변수를 하나 새로 만들어주자(i를 재활용하는 실수를 범한다.)
'기타등등 > 알고리즘 기록' 카테고리의 다른 글
[C++]약수의 개수 (0) | 2021.06.18 |
---|---|
[C++] 올바른 괄호 (0) | 2021.06.16 |
[C++] 나이 계산(문자열 컨트롤) (0) | 2021.06.16 |
[C++] 나이차이 (0) | 2021.06.16 |
[Unity C#] 문자열 뒤집기 (0) | 2021.03.30 |