69,336
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(argc, argv)
{
double cc;
cc = 1234569100123.123;
}
char str[32] = {0};
double cc;
int len = 0;
cc = 1234569100123.123;
sprintf(str, "%f", cc);
len = strlen(str);
while(str[len-1] == '0')
{
str[len-1] = '\0';
len--;
}
printf("%d\n", len);
system("pause");
return 0;
...
#define DBL_DIG 15 /* # of decimal digits of precision */
#define DBL_EPSILON 2.2204460492503131e-016 /* smallest such that 1.0+DBL_EPSILON != 1.0 */
#define DBL_MANT_DIG 53 /* # of bits in mantissa */
#define DBL_MAX 1.7976931348623158e+308 /* max value */
#define DBL_MAX_10_EXP 308 /* max decimal exponent */
#define DBL_MAX_EXP 1024 /* max binary exponent */
#define DBL_MIN 2.2250738585072014e-308 /* min positive value */
#define DBL_MIN_10_EXP (-307) /* min decimal exponent */
#define DBL_MIN_EXP (-1021) /* min binary exponent */
#define _DBL_RADIX 2 /* exponent radix */
#define _DBL_ROUNDS 1 /* addition rounding: near */
...
int main()
{
char buf[32];
double cc;
cc = 1234569100123.123;
sprintf(buf, "%17.3f", cc);
cout << buf;
return 0;
}
double cc;
int i,j = 0, k = 0;
cc = 1234569100123.123;
char str[32] = {0};
sprintf(str, "%f", cc);
for (i = 0; str[i] != '\0'; i++)
{
if (str[i] == '0')
{
j++;
}
else
{
k++;
k+=j;
j=0;
}
}