관리 메뉴

History

[c언어]소문자를 대문자로 바꾸는 방법 본문

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
반응형
Comments