2011-12-20 07:12:14
地址:http://acm.hdu.edu.cn/showproblem.php?pid=2522
题意:中文。。
mark:模拟除法运算,注意判循环节,注意负数。
代码:
# include <stdio.h>
int flag[1000010] ;
void output(int a, int b)
{
if (a == 1) return ;
if (flag[a]) return ;
flag[a] = 1 ;
printf ("%d", a/b) ;
if (a % b != 0 && a%b != 1) output ((a%b) * 10, b) ;
}
int main ()
{
int i, n, T ;
scanf ("%d", &T) ;
while (T--)
{
scanf ("%d", &n) ;
if (n<0)
{
printf ("-") ;
n = -n ;
}
for (i = 0 ; i<= n*10 ; i++)
flag[i] = 0 ;
printf ("0.") ;
output(10, n) ;
printf ("\n") ;
}
return 0 ;
}