c语言 求小数的位数要求 算出浮点部分的位数!不能用数组指针.想了好多方法,都以为精度缺失问题失败来.比如while (
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/08/10 06:11:42
c语言 求小数的位数
要求 算出浮点部分的位数!不能用数组指针.
想了好多方法,都以为精度缺失问题失败来.比如
while ((float)cpNum2>(float)(int)cpNum2)
\x09{
\x09\x09cpNum2 *= 10;
\x09\x09bFlt++;
\x09}
要求 算出浮点部分的位数!不能用数组指针.
想了好多方法,都以为精度缺失问题失败来.比如
while ((float)cpNum2>(float)(int)cpNum2)
\x09{
\x09\x09cpNum2 *= 10;
\x09\x09bFlt++;
\x09}
![c语言 求小数的位数要求 算出浮点部分的位数!不能用数组指针.想了好多方法,都以为精度缺失问题失败来.比如while (](/uploads/image/z/16433154-18-4.jpg?t=c%E8%AF%AD%E8%A8%80+%E6%B1%82%E5%B0%8F%E6%95%B0%E7%9A%84%E4%BD%8D%E6%95%B0%E8%A6%81%E6%B1%82+%E7%AE%97%E5%87%BA%E6%B5%AE%E7%82%B9%E9%83%A8%E5%88%86%E7%9A%84%E4%BD%8D%E6%95%B0%21%E4%B8%8D%E8%83%BD%E7%94%A8%E6%95%B0%E7%BB%84%E6%8C%87%E9%92%88.%E6%83%B3%E4%BA%86%E5%A5%BD%E5%A4%9A%E6%96%B9%E6%B3%95%2C%E9%83%BD%E4%BB%A5%E4%B8%BA%E7%B2%BE%E5%BA%A6%E7%BC%BA%E5%A4%B1%E9%97%AE%E9%A2%98%E5%A4%B1%E8%B4%A5%E6%9D%A5.%E6%AF%94%E5%A6%82while+%28)
#include<stdio.h>
#include<string.h>
int main()
{
int i,x,y;
char s[100];//用字符串存储浮点数
printf("请输入浮点数:");
gets(s);
y=strlen(s);
for(i=0;i<100;i++)
{
if(s[i]=='.')
x=(i+1);
}
y-=x;
printf("%d\n",y);
return 0;
} 看来还是没明白你的意思,呵呵
再问: 原题是随机输入double类型的数转换成字符串! 貌似就不能用字符串输入浮点数了吧
再答: 我不太明白你的意思,这个随机输入不是键盘随机输入一个double类型的浮点数? 然后我写的确实也是将浮点数转换成字符串来处理的。求的是浮点数小数部分的位数。不知道你到底是什么意思呢?
#include<string.h>
int main()
{
int i,x,y;
char s[100];//用字符串存储浮点数
printf("请输入浮点数:");
gets(s);
y=strlen(s);
for(i=0;i<100;i++)
{
if(s[i]=='.')
x=(i+1);
}
y-=x;
printf("%d\n",y);
return 0;
} 看来还是没明白你的意思,呵呵
再问: 原题是随机输入double类型的数转换成字符串! 貌似就不能用字符串输入浮点数了吧
再答: 我不太明白你的意思,这个随机输入不是键盘随机输入一个double类型的浮点数? 然后我写的确实也是将浮点数转换成字符串来处理的。求的是浮点数小数部分的位数。不知道你到底是什么意思呢?