我需要计算float数字中的位数,并保留该数字。我可以将scanf()与%f或%c一起使用,但不能与%s一起使用,并且我可以使用getchar()。
我可以使用getchar,但我会丢失数字。
发布于 2010-01-01 16:13:46
为什么你会用getchar丢失号码
strtod确保它是字符串中有效的浮点值如果您仅限于getchar
getchar发布于 2010-01-01 17:08:12
正如我所见,你已经得到了答案,但这对你也适用吗?
#include <stdio.h>
int main()
{
char *str = new char[30];
float flt;
int count = 0;
scanf( "%f", &flt);
printf( "number you entered is: %f\n", flt);
sprintf(str, "%f", flt );
for( ;str[count] != '\0'; count++ );
printf( "%f have %d digits", flt, count-1);
return 0;
}https://stackoverflow.com/questions/1988160
复制相似问题