1. c语言 指数函数怎么表达谢谢
在开始加上#include <math.h>;
程序中就可以调用pow(x,y)。
main()
{
double z;
z=pow(10,5);
printf("%lf/n",z);
}
输出结果:
285.000000
(1)c语言指数函数曲线拟合扩展阅读
c语言求自然对数的底e的指数,可以使用函数exp().
exp()的头文件:#include
exp()的函数原型:double exp(double x);
exp()函数的作用:返回e的x次方。
exp()的相关函数:float expf(float x);
long double expl(long double x);
注:自然对数的底e叫做: 欧拉数(eula's number)
2. 曲线拟合 最小二乘法 C语言程序
#include<stdio.h>
#include<math.h>
void Guass(int n,float Array[][10])
{
float s,u;
int i,j,k,a,x,y;
for(i=0;i<n-1;i++)
{
s=Array[i][i];
k=i;
for(a=i+1;a<n;a++)
{
if(fabs(s) < fabs(Array[a][i]))
{
s=Array[a][i];
k=a;
}
}
if(k!=i)
{
for(j=i;j<n+1;j++)
{
u=Array[i][j];Array[i][j]=Array[k][j];Array[k][j]=u;
}
}
for(x=i+1;x<n;x++)
{
u=Array[x][i]/s;
for(y=i;y<n+1;y++)
{
Array[x][y]=Array[x][y]-u*Array[i][y];
}
}
}
for(x=n-1;x>=0;x--)
{
s=0;
for(y=x+1;y<n;y++)
s=s+Array[x][y]*Array[y][n];
Array[x][n]=(Array[x][n]-s)/(Array[x][x]);//得到结果
}
for(i=0;i<n;i++)printf("%f ",Array[i][n]);printf("\n");
}
int main()
{
int n,i,j;
float Array[10][10];
scanf("%d",&n);
for(i=0;i<n;i++)
{
for(j=0;j<n+1;j++)
scanf("%f",&Array[i][j]);
}
Guass(n,Array);
return 0;
}
3. C语言曲线拟合原理
虽然我知道什么是曲线拟合,怎么做,但是我不清楚你问题的具体内容,
从chuaike24的回答
“请高手 说实话 我是菜鸟 但你的程序感觉好凌乱 好多地方可以精简说最明显的问题 power函数返回值无论怎样都返回0 ”来看,我可能是没看到你的程序,所以信息不全。
我只回答什么是曲线拟合
曲线拟合,简单来说,是指以近似的方法用一条曲线逼近一组数据点。
逼近的方法最常用的事最小二乘法,当然也有其他方法。
逼近的曲线可以是直线,也可以是多项式曲线,二次,三次,多次,也可以是分段多项式曲线,也可以是B样条曲线。在这里,如果不需要深入研究,你只要把B样条曲线理解为一种近似于分段多项式曲线即可。
你问的不多,这些对你的回答已经足够,需要深入了解再问
4. C语言如何实现二次曲线拟合
首先,谁都不能根据仅有的数据集来断定这就是什么曲线。
我们只能通过对数据观察推测可能会符合什么形式的曲线。
已知10个数据点的训练集,可以采用多项式拟合的办法来做,但是不建议使用C语言来实现。
这种数学问题用matlab很容易就可以解决,c语言写要麻烦的多的多。比如你采用最小二乘法的话,
你需要自己用c语言写很多矩阵运算。
5. 求C语言 对数曲线拟合列子
用matlab很简单,给你个资料看看http://wenku..com/view/bd3da24e852458fb770b56ec.html
希望对你有帮助
那你就看看最小二乘法的书吧,最小二乘法的基本思路就是使得曲线在方差意义上最小,通过一些矩阵运算就能做出来,你查阅一下相关书籍吧,具体算法我也忘了。
6. 急~~~~~~!!!求解!用C语言编写最小二乘法求数据的拟合曲线~并做出图显示拟合效果!高分悬赏!
#include<stdio.h>
#include<math.h>
void Guass(int n,float Array[][10])
{
float s,u;
int i,j,k,a,x,y;
for(i=0;i<n-1;i++)
{
s=Array[i][i];
k=i;
for(a=i+1;a<n;a++)
{
if(fabs(s) < fabs(Array[a][i]))
{
s=Array[a][i];
k=a;
}
}
if(k!=i)
{
for(j=i;j<n+1;j++)
{
u=Array[i][j];Array[i][j]=Array[k][j];Array[k][j]=u;
}
}
for(x=i+1;x<n;x++)
{
u=Array[x][i]/s;
for(y=i;y<n+1;y++)
{
Array[x][y]=Array[x][y]-u*Array[i][y];
}
}
}
for(x=n-1;x>=0;x--)
{
s=0;
for(y=x+1;y<n;y++)
s=s+Array[x][y]*Array[y][n];
Array[x][n]=(Array[x][n]-s)/(Array[x][x]);//得到结果
}
for(i=0;i<n;i++)printf("%f ",Array[i][n]);printf("\n");
}
int main()
{
int n,i,j;
float Array[10][10];
scanf("%d",&n);
for(i=0;i<n;i++)
{
for(j=0;j<n+1;j++)
scanf("%f",&Array[i][j]);
}
Guass(n,Array);
return 0;
}
你的串号我已经记下,采纳后我会帮你制作
7. 谁知道c语言中指数函数语句怎么写的,如p=(1+r)^10怎么写
p=pow((1+r),10);这个头文件在#include<math.h>
祝你愉快!
8. C语言线性曲线拟合
可以直接在线进行拟合,下面是地址(已验证)
http://3.14159.biz/math/Fit.html
建议你直接对数据用Matlab的cftool拟合(可以自由的自定义拟合函数形式)
9. c语言怎么把数据拟合成函数并画线
1、通过一些点拟合出一条直线。
2、参数:pt_input指向传入的点的指针。
3、ptNumbers传入的点数量。
4、k指向拟合直线参数k的指针。
5、b指向拟合直线参数b的指针。
10. 用c语言写指数函数 C语言中的POW函数怎么使用
C语言中的POW函数使用:
#include<stdio.h>
#defineACCURACY100
doublefunc1(doublet,intn);
doublefunc2(doubleb,intn);
doublepow2(doublea,doubleb);
intmain(){
printf("%lf",pow2(5.21,4.11));
return0;
}
doublepow2(doublea,doubleb){
if(a==0&&b>0){
return0;
}
elseif(a==0&&b<=0){
return1/0;
}
elseif(a<0&&!(b-(int)b<0.0001||(b-(int)b>0.999))){
return1/0;
}
if(a<=2&&a>=0){
doublet=a-1;
doubleanswer=1;
for(inti=1;i<ACCURACY;i++){
answer=answer+func1(t,i)*func2(b,i);
}
returnanswer;
}
elseif(a>2){
inttime=0;
while(a>2){
a=a/2;
time++;
}
returnpow2(a,b)*pow2(2,b*time);
}
else{
if((int)b%2==0){
returnpow2(-a,b);
}
else{
return-pow2(-a,b);
}
}
}
doublefunc1(doublet,intn){
doubleanswer=1;
for(inti=0;i<n;i++){
answer=answer*t;
}
returnanswer;
}
doublefunc2(doubleb,intn){
doubleanswer=1;
for(inti=1;i<=n;i++){
answer=answer*(b-i+1)/i;
}
returnanswer;
}
(10)c语言指数函数曲线拟合扩展阅读
C++提供以下几种pow函数的重载形式:
doublepow(doubleX,intY);
floatpow(floatX,floatY);
floatpow(floatX,intY);
longdoublepow(longdoubleX,longdoubleY);
longdoublepow(longdoubleX,intY);
使用的时候应合理设置参数类型,避免有多个“pow”实例与参数列表相匹配的情况。
其中较容易发生重载的是使用形如:
intX,Y;
intnum=pow(X,Y);
这是一个比较常用的函数,但是编译器会提醒有多个“pow”实例与参数列表相匹配。
可以使用强制类型转换解决这个问题:num=pow((float)X,Y);