
#include <stdioh>
#include <mathh>
int main( )
{
double x, root;
scanf("%lf", &x);
/---------/
root=sqrt(x);
printf("The square root of %01f is %01f\n", x, root);
return 0;
}
可以使用if语句来判断输入的数是否为正数,如果是,则求其平方根,否则不做任何处理。
以下是使用C语言实现该功能的代码示例:
#include <stdioh>
#include <mathh>
int main() {
double num, sqrt_num;
printf("请输入一个数:");
scanf("%lf", &num);
if (num >= 0) {
sqrt_num = sqrt(num);
printf("该数的平方根为:%lf", sqrt_num);
}
else {
printf("该数为负数,无法求平方根。");
}
return 0;
}
在上述代码中,先使用scanf函数读取输入的数,然后使用if语句判断输入的数是否为正数。如果是正数,则调用sqrt函数求其平方根并输出结果;如果是负数,则输出提示信息。需要注意的是,由于求平方根的结果可能是小数,因此使用double类型来存储输入的数和平方根的值。
1、平方根
C语言中sqrt函数是指的开方运算函数,得到的结果是函数变量(可以是数值,也可以是变量名)的算术平方根。
2、N次方根
double pow(double x,double n)
是mathh里一函数,求x的n次幂
x必须>0,
立方根就是1/3次幂了
但这里要用30或10/3,否则成了整除结果为1
扩展资料:
C语言函数
double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度
double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度
double atan(double x) 返回x的反正切tan-1(x)值,x为弧度
double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度
ldexp()函数:返回x乘以2的exponent次方(次幂)的值
labs()函数:求整数的绝对值(针对long类型)
isgraph()函数:判断一个字符是否是图形字符
isdigit()函数:判断一个字符是否为数字
iscntrl()函数:判断一个字符是否为控制字符
isalpha()函数:判断一个字符是否是字母
isalnum()函数:判断一个字符是否是字母或者数字
-c语言
#include <stdioh>
#include <mathh>
int main()
{
float a=5, b;
b=sqrt(a);
printf("a的平方根为:%f\n",b);
return 0;
}
1 循环输入整数。
2 判断整数值,如为正数,则退出循环,否则继续输入;
3 利用sqrt函数求平方根
4 输出。
代码如下:
int main(){
int n;
double r;
while(1)
{
scanf("%d",&n);
if(n>0)break;
}
r = sqrt(n);
printf("%lf",r);
}
平方直接两个数相乘即可。
平方根可以通过这个数本身和0之间进行折半查找的方法,对数据进行计算。
当两数相乘大于这个数时,重置最大值;小于这个数时,重置最小值。由于存在除不尽的数,可以加上一个精度进行判断。
#include<stdioh>
#include<mathh>
double squareFun(double x) // 平方
{
return xx;
}
double sqrtFun(double x, int precision) // 开方
{
double a = 0, b = x, mid = x/2, val = pow(10, -precision);
if (x < 0)
return -1;
while (true) // 循环折半查找
{
if (fabs(midmid-x) <= val) // 达到进度则退出
break;
if (midmid > x)
b = mid; // 重置最大值
else
a = mid; // 重置最小值
mid = (a+b)/2;
}
return mid;
}
int main()
{
double d = sqrtFun(2, 15);
printf("%15lf\n", d);
printf("%15lf\n", squareFun(d));
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)