본문 바로가기
C언어

[C언어]4자리 양수를 입력받은 후 그 수를 뒤집은 숫자와의 차의 절대값을 출력하는 프로그램을 작성하시오.

by 이얏호이야호 2020. 4. 7.

입력받은 수를 뒤집어 차의 절대값을 구하는 프로그램을 가지고 왔습니다!

물론 단번에 코드를 본다면 좋기야 하겠지만 장기적으로 봤을때

혼자풀어보기 -> 힌트 -> 코드보기 순으로 공부하시는게 실력 향상에 큰 도움이 됩니다!

힌트를 보고 천천히 생각을 거쳐서 문제를 풀어보시고

답안을 확인해보세요

코드힌트

더보기
결과1
결과1
결과2
결과2

조건 : 조건연산자를 이용하여 출력하시오 if문사용 x

입력받은 수를 나눗셈의 몫, 나머지를 구할 때 쓰이는 /, %를 사용하여 구합니다

n + (n+1) * 10 + (n+2) * 100 + (n+3) * 1000 을 이용하여 입력된 수를 거꾸로 출력합니다

조건연산자를 이용하여 양수라면 그냥 출력, 음수라면 -를 붙여 양수로 바꿔 출력합니다

프로그램의 기본 틀입니다. 작성해보시고 답안코드를 확인해보세요!

#include<stdio.h>

int main(){

 int input,a,b,c,d, rotate,result;

 scanf("%d",&input); 

 //첫 번째 자리수입니다  

 //두 번째 자리수입니다.

 //세 번째 자리수입니다

 //네 번째 자리수입니다.

 rotate = 					 //input을 거꾸로 회전합니다.

 result = input - rotate; //input과 rotate의 차를 구합니다

//양수라면 그대로 출력하고 음수라면 -를 붙여 양수로 출력되게 합니다.

}

 

 

 

 

 

답안코드

더보기
결과1
결과1
#include<stdio.h>

int main(){

 int input,a,b,c,d, rotate,result;

 scanf("%d",&input); 

 a = input/1000; //첫 번째 자리수입니다  

 b = input%1000/100; //두 번째 자리수입니다.

 c = input%100/10; //세 번째 자리수입니다

 d = input%10; //네 번째 자리수입니다.

 rotate = d*1000 + c*100 + b*10 + a; //input을 거꾸로 회전합니다.

 result = input - rotate; //input과 rotate의 차를 구합니다

 (result>0)? printf("%d",result):printf("%d",-result); //양수라면 그대로 출력하고 음수라면 -를 붙여 양수로 출력되게 합니다.

}

 

 

 

 

 

 

 

더 많은 C언어 글이 궁금하다면?

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

 

댓글