#include <stdio.h>
#include <math.h>
int main(void) {
int inum, i, j, k;
int digits[30]={0,};
double dec, number;
printf("Enter a decimal number : ");
scanf("%lf", &number);
inum=(int)number; //정수
dec=number-inum; //소수
i=0;
j=inum;
k=1;
while(j>9){ //정수부분 먼저 출력
k=10*k;
j=j/10;
}
while(k>0) {
digits[i]=inum/k;
inum=inum%k;
k=k/10;
i=i+1;
}
while(dec>0.0000001) {
dec=10*dec;
k=(int)(dec+0.01);
dec=dec-k;
digits[i]=k;
i=i+1;
}
for(j=i-1; j>-1; --j) {
printf("%d\n", digits[j]);
}
return 0;
}
'c·c++ > c 프로그래밍' 카테고리의 다른 글
fgets로 파일읽기 (0) | 2012.03.27 |
---|---|
문자열 복사하기 (0) | 2012.03.27 |
행렬의 곱셈 등 - 배열의 크기가 주어졌을 때 (0) | 2012.03.26 |
주민번호 체크수자는 어떻게 구하나? (0) | 2012.03.26 |
네이버 질문 중에서 (0) | 2012.03.26 |