/******************************************************************** @file main.cpp@date 2017-5-8@author Zoro_ Tiger@brief Problem 1009:c Language Programming Tutorial (third Edition) after class exercise 5.7http://www.dotcpp.com/oj/problem1009.html********************************************************************/#include<cstdio>#include<cmath>#defineTEST#undefTESTintMainintargcConst Char*argv[]) {#ifdef TEST freopen ("In.txt","R", stdin); Freopen ("OUT.txt","W", stdout);#endif intNumber ; while(SCANF ("%d", &number)! =EOF) { //! Number of output bits intNumber_bit = static_cast<int> (LOG10 (static_cast<Double> (number)) +1; printf ("%d\n", Number_bit); intTemp_number =0; //! output Positive OrderTemp_number =Number ; for(inti = number_bit-1; I >=1; --i) {intremainder = static_cast<int> (POW (10.0f, i)); intSub_temp_number = Temp_number/remainder; printf ("%d", Sub_temp_number%Ten); } printf ("%d\n", Temp_number%Ten); //! Reverse outputTemp_number =Number ; for(inti =1; I <= number_bit; ++i) {printf ("%d", Temp_number%Ten); Temp_number/=Ten; } printf ("\ n"); } return 0;}
Question 1009:c Language Programming tutorial (third Edition) after class exercise 5.7