안녕하세요. 오늘은 배열에 있는 값을 대문자or소문자로 치환해보는 함수를 만들어보겠습니다
먼저 알아야 할 내용은 아스키코드에있는 a~z, A~Z값입니다
a~z는 97~122이고 A~Z는 65~98입니다
각 문자의 차이는 32가 납니다
그래서 A에 32를 더하면 97이고 a입니다
이러한 방식으로 함수를 만들면 됩니다
#include <stdio.h>
void stringToUpper(char *str)
{
char s;
int i;
for(i=0; i<100 ; i++)
{
s = str[i];
if(s == 0)
{
break;
}
if((s>='a')&&(s<='z'))
{
s = s-32;
}
str[i] = s;
}
}
void stringToLower(char *str)
{
char s;
int i;
for(i=0; i<100 ; i++)
{
s = str[i];
if(s == 0)
{
break;
}
if((s>='A')&&(s<='Z'))
{
s = s+32;
}
str[i] = s;
}
}
int main()
{
char str[] = "WowONE";
printf("Original str : %s \n", str);
stringToUpper(str);
printf("After stringToUpper function call str : %s \n\n", str);
printf("Original str : %s \n", str);
stringToLower(str);
printf("After stringToLower function call str : %s \n", str);
}
WowONE문자열을 stringToUpper함수를 호출해서 대문자로 만들었습니다. 그 다음에 WOWONE문자열을 stringToLower함수를 호출해서 소문자로 만들었습니다.
'프로그래밍 언어 > 유용한함수' 카테고리의 다른 글
FCFS(FIFO)스케줄링 C언어로 구현하기 (0) | 2020.11.15 |
---|---|
C언어로 상승엣지,하강엣지 기능 구현하기 (1) | 2020.02.22 |
센서의 전류값 계산하기(직선의 방정식 코드로 나타내기) (0) | 2019.10.27 |