본문 바로가기
C언어

[C언어]문자 1개와 숫자 1개를 입력할 경우, 문자를 입력한 숫자만큼 증가시키는 프로그램을 작성하라.

by 이얏호이야호 2020. 5. 18.

공부하시는대에 도움이 됐으면 좋겠습니다.

답안코드 확인해주세요!

 

더보기

조건) 대문자 및 소문자에 대해서 적용되며 숫자 및 특스문자는 입력한 글자를 그대로 출력한다. 대문자 끝 'Z'에 도달한 경우 앞'A'로 이동하낟. 소문자 'z' 다음에는 소문자 'a'로 이동한다.(나머지연산자'%' 이용)

#include<stdio.h>

int main(){

	char inputA, result;

	int inputB;

	scanf("%c", &inputA);

	scanf("%d", &inputB);	

	result = inputA+ inputB;		// 글자inputA에서 정수inputB 만큼 이동한 결과를 resullt에 입력합니다.	

	if(result >='A' &&result <='Z'){	// result 가 A~Z사이에 있는 글자라면 글자그대로를 출력합니다.

		printf("%c",result);

	}else if(result>'Z' && result<'a'){	// 대문자의 끝 Z에 도달한 경우 %를 이용하여 'A'로 이동합니다.		

		result = ((inputA-65) + inputB)%26;

		result += 65;

		printf("%c", result);

	}else if(result >='a' &&result <='z'){	// result 가 a~z사이에 있는 글자라면 글자그대로를 출력합니다.

		printf("%c",result);

	}else if(result > 'z'){	// 대문자의 끝 z에 도달한 경우 %를 이용하여 'a'로 이동합니다.		

		result = ((inputA-96) + inputB)%26;

		result += 96;

		printf("%c", result);

	}else{			// 숫자 및 특수문자는 입력한글자 그대로 출력 

		printf("%c", inputA);

	}	

}


더 많은 C코드가 보고 싶다면?

https://chuinggun.tistory.com/category/C%EC%96%B8%EC%96%B4

댓글