풀이
strlwr함수를 이용한 풀이 ( 백준에서는 사용 x)
#include <stdio.h>
#include <string.h>
int main() {
int n;
char s[20];
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%s", s);
strlwr(s); // 문자열을 소문자로 바꿈
printf("%s\n", s);
}
return 0;
}
백준에서는 비표준함수로 인식되어 이대로 제출시에 컴파일 에러가 뜬다.
그렇기에 대문자 -> 소문자 로 바꿔주는 알고리즘을 따로 만들어야한다.
소문자 변환 알고리즘 풀이
#include <stdio.h>
int main() {
int n;
char si[20];
scanf("%d", &n);
for (int i = 0; i < n; i++) {
scanf("%s", si);
int j = 0;
while (si[j] != '\0') { // 문자열을 끝까지 탐색
// 문자열의 문자가 대문자일때, 문자를 아스키코드값을 통해 소문자 변경
if (si[j] >= 'A' && si[j] <= 'Z') si[j] += 32;
j++;
}
printf("%s\n", si);
}
return 0;
}
'코딩 > 백준 문제 (브론즈)' 카테고리의 다른 글
[백준/5086/C언어] 배수와 약수 _ 풀이 (0) | 2023.08.17 |
---|---|
[백준/5622/C언어] 다이얼 _ 풀이 (0) | 2023.08.17 |
[백준/5523/C언어] 경기 결과 _ 풀이 (0) | 2023.08.17 |
[백준/5554/C언어] 심부름 가는 길 _ 풀이 (0) | 2023.08.17 |
[백준/1408/C언어] 24 _ 풀이 (0) | 2023.08.16 |