C,C++/개념 실습 프로그래밍
[c언어]소문자를 대문자로 바꾸는 방법
luckybee
2022. 10. 4. 12:36
728x90
반응형
사용자에게 영문자를 입력받고 그 문자가 소문자면 대문자로 변경해서 출력하는 코드를 작성해보았다. 코드를 보여주기 전에 이 코드에 조건을 걸었다.
1. 배열이나 포인터는 사용하지 않는다.
2. scanf를 사용하지 않는다.
위의 조건을 충족시키기 위해서 필자는 getchar함수를 사용하여 한 문자씩 입력을 받았다. gets_s나 fgets함수는 배열을 사용해야 하기 때문에 1번째 조건에서 탈락이다.
이제 코드를 확인해보자.
#include<stdio.h>
#pragma warning(disable:4996)
#define MAX 5
int main()
{
int data=0;
while (data!='\n'){
data = getchar(); //포준 입력 버퍼에 저장된 문자를 하나씩 읽는다.
if (data>='a'&& data <= 'z'){ //아스키 코드 값으로 조건을 달았다.
data -= 32; 대문자와 소문자의 아스키 코드 값의 차이
}
putchar(data); //data에 저장된 문자를 화면에 출력한다.
}
return 0;
}
728x90
반응형