| tmdghks123 |
쉽고 간단한 방법으로는 , 나누는 방법이 있겠네요.
int num = 9753 ; 이라는 값이 있을 때.
먼저 천의 자리는
num / 1000; 하면 9라는 값을 얻을 수 있겠지요.
그 다음 100의 자릿수를 구해야 하는데 이 방법대로 num/ 100; 하면 7이 아니라 97이 출력되겠죠?
그러므로 , num 의 값을 1000으로 나눈 나머지 값 % (Modular) 연산을 해줘야 합니다.
정리하자면,
printf(" 천의 자리 : %d \n" , num/1000);
num = num % 1000;
printf(" 백의 자리 : %d \n" , num / 100);
num = num % 100;
이런식으로 하면 되겠지요??? for 문이나 while 문으로 반복문을 이용하여 코드를 간결화 할 수도 있겠네요.
또 다른 방법으로 int num = 9743; 이 값이 정수형 데이터가 아니라 문자형 데이터가 되기 원한다면, char* itoa(int value, char* string, int radix); 라는 함수를 이용할 수도 있습니다.
정수형에서 문자열로 변한 값의 문자열 자릿수만 골라내어 이용하는 방법도 있겠지요.
글쓴이분께서 아직 초보라고 하시니 이 방법은 조금 어려울 수도 있고 그냥 이런 방법도 있겠구나라고 알아만 두셔도 좋을 것 같습니다 ^^
저도 초보라 제 글이 도움이 되었을지 모르겠네요~ 그럼 좋은 하루 되세요~ |
2015/04/04 |
|