请用C语言编写一个开根号的计算
时间: 2024-10-22 20:21:28 浏览: 31
在C语言中,由于缺乏内置的开方函数,我们可以使用牛顿法或者直接查找平方表来近似计算一个数的平方根。这里我将展示一个简单的牛顿法求平方根的例子,它是一个迭代过程,不断逼近真实值:
```c
#include <stdio.h>
// 使用牛顿法计算平方根的函数
double sqrt_iterative(double num, double epsilon) {
if (num < 0) {
printf("Error: Square root of negative number is undefined.\n");
return -1; // 对负数抛出错误
}
double guess = num / 2;
while (fabs(guess * guess - num) > epsilon) { // 判断差值是否小于给定的精度
guess = (guess + num / guess) / 2;
}
return guess;
}
int main() {
double input;
double epsilon = 1e-6; // 精度设置
printf("Enter a non-negative number for square root: ");
scanf("%lf", &input);
double result = sqrt_iterative(input, epsilon);
if (result != -1) {
printf("Approximate square root: %.4f\n", result);
}
return 0;
}
```
阅读全文