您的位置:首页 > 其它

蓝桥杯 历届试题 x的X次幂

2016-03-14 20:37 225 查看
如果x的x次幂结果为10,你能计算出x的近似值吗?

显然,这个值是介于2和3之间的一个数字。

请把x的值计算到小数后6位(四舍五入),并填写这个小数值。

需要用到的函数fabs(double x),求x的绝对值;pow(x,y),求x^y的值

答案:2.506184

[cpp] view
plain copy

#include<stdio.h>  

#include<math.h>  

  

//以下是while循环实现   

int main()  

{  

    double x=2.0;  

    while(x<3.0)  

    {  

        x=x+0.00000001;//8个小数位的形式递增   

        if(fabs(pow(x,x)-10.0)<0.000001)  

        {  

            //printf("%lf\n",x);//直接输出2.506184 ,就无法四舍五入   

            printf("%.8lf\n",x);//输出8位小数然后我们再4舍5入   

        }  

    }  

}   

//以下是for循环实现   

int main1()  

{  

    double x;//从2开始   

    for(x=2.0;x<3.0;x+=0.00000001)//8个小数位的形式递增   

    {  

        //pow 函数求x的y次方,然后减去10.0再取绝对值看之差是否在10的-6次方以内以满足精度要求   

        if(fabs(pow(x,x)-10.0)<0.000001)   

        {  

            printf("%.8lf\n",x);  

            //break; //因为要求4舍5入所以多输出几个数字来做判断   

        }   

    }  

    return 0;  

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: