首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >C语言的数学计算库是什么?

C语言的数学计算库是什么?
EN

Stack Overflow用户
提问于 2013-12-28 12:17:45
回答 5查看 400关注 0票数 1

我怎么用正方形?例如,下面的计算:

代码语言:javascript
代码运行次数:0
运行
复制
2^4=16

但是,当我这样做的时候,结果是:6这个计算没有使用乘法的库吗?

代码语言:javascript
代码运行次数:0
运行
复制
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
    int c,a=2,b=4;
    c=a^b;
    printf("%d",c);
    return 0;
}

我怎么能在C中使用激进词呢?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-12-28 12:19:34

C中的^是异或运算符。

使用pow()来实现你想要达到的目标,比如;

代码语言:javascript
代码运行次数:0
运行
复制
c = pow(a, b);

链接程序时,可能需要通过添加链接器选项-lm来引用-lm库。

将更新引用到您的问题:使用sqrt()

代码语言:javascript
代码运行次数:0
运行
复制
double  x = sqrt(4); /* Results in 2. */

或者简单地使用:

代码语言:javascript
代码运行次数:0
运行
复制
... = pow(4, 1./2.); /* Also results in 2. */

代码语言:javascript
代码运行次数:0
运行
复制
double y = pow(8, 1./3.); /* To also find 2. */

一般来说,这个公式适用于:

这可以通过以下方式来完成:

代码语言:javascript
代码运行次数:0
运行
复制
/* Return n-th radical root of the m-th power to x. */
double nrt_mpow(doubel x, double m, double n)
{
  return pow(x, m/n);
}

/* Return n-th radical root of x. */
double nrt(double x, root n)
{
  return nrt_mpow(x, 1, n):
}

或者交替地作为宏实现:

代码语言:javascript
代码运行次数:0
运行
复制
#define NRT_MPOW(x, m, n) pow((x), (m)/(n))
#define NRT(x, n) NRT_MPOW((x), 1., (n))
票数 3
EN

Stack Overflow用户

发布于 2013-12-28 12:19:38

在C中,^是XOR运算符。2 XOR 4确实等同于6

您应该包括math.h头文件:

代码语言:javascript
代码运行次数:0
运行
复制
#include <math.h>

double pow( double base, double exp );

 ...
x = pow(2, 4);     
票数 4
EN

Stack Overflow用户

发布于 2013-12-28 12:26:50

数学库的标题是:

#include <math.h>

C使用pow()代替^。

代码语言:javascript
代码运行次数:0
运行
复制
c = pow(a,b);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20814439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档