| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1034 人关注过本帖
标题:求函数得值
只看楼主 加入收藏
清白小生
Rank: 2
来 自:深圳
等 级:论坛游民
帖 子:15
专家分:16
注 册:2016-11-3
结帖率:33.33%
收藏
 问题点数:0 回复次数:5 
求函数得值
给定数组double A[N+1]表示函数f(x) = a0+a1*x^1+a2*x^2+…+anx^n的系数,写出一个函数doubleeval(double x,double* A, int N)用来求函数的值.
搜索更多相关主题的帖子: double 
2017-02-23 13:51
清白小生
Rank: 2
来 自:深圳
等 级:论坛游民
帖 子:15
专家分:16
注 册:2016-11-3
收藏
得分:0 
求教一下啊

懒惰解决不了啥事
2017-02-23 13:51
mnmn4429
Rank: 4
等 级:业余侠客
帖 子:64
专家分:245
注 册:2017-2-21
收藏
得分:0 
用递归累加
2017-02-23 14:07
yanzy
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:104
专家分:372
注 册:2017-2-7
收藏
得分:0 
程序代码:
/*给定数组double A[N+1]表示函数f(x) = a0+a1*x^1+a2*x^2+…+anx^n的系数,写出一个函数doubleeval(double x,double* A, int N)用来求函数的值.*/

#include <stdio.h>

double f(double a,int b)
{
    if (b == 0)
        return 1;
    else
        return a*f(a, b - 1);
}

double doubleeval(double x, double* A, int N)
{
    if (N == 0)
        return *A;
    else
        return (*(A + N))*f(x, N) + doubleeval(x, A, N - 1);
}

int main(void)
{
    double A[10], n;//因为不支持变长数组,暂定为10
    int N;
    N = sizeof(A) / sizeof(A[0]) - 1;

    printf("Enter x: ");
    scanf("%lf", &n);

    for (int i = 0; i < sizeof(A) / sizeof(A[0]); i++)//for循环用于给数组赋值
    {
        A[i] = i + 1.3;
        printf("A[%d] = %f\n", i, A[i]);
    }
    printf("f(%f) = %f\n", n, doubleeval(n, A, N));
    return 0;
}


[此贴子已经被作者于2017-2-23 15:52编辑过]

2017-02-23 15:40
清白小生
Rank: 2
来 自:深圳
等 级:论坛游民
帖 子:15
专家分:16
注 册:2016-11-3
收藏
得分:0 
回复 4楼 yanzy
好的,多谢啦

懒惰解决不了啥事
2017-02-23 18:29
清白小生
Rank: 2
来 自:深圳
等 级:论坛游民
帖 子:15
专家分:16
注 册:2016-11-3
收藏
得分:0 
回复 3楼 mnmn4429
多谢!

懒惰解决不了啥事
2017-02-23 18:39
快速回复:求函数得值
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.138277 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved