C语言实现: ![gif.latex?f%28x%29%20%3D%20a_%7Bn%7Dx%5E%7Bn%7D+a_%7Bn-1%7Dx%5E%7Bn-1%7D+...+a_%7Bi%7Dx%5E%7Bi%7D+...+a_%7B1%7Dx+a_0](https://latex.csdn.net/eq?f%28x%29%20%3D%20a_%7Bn%7Dx%5E%7Bn%7D+a_%7Bn-1%7Dx%5E%7Bn-1%7D+...+a_%7Bi%7Dx%5E%7Bi%7D+...+a_%7B1%7Dx+a_0)
#include <stdio.h>
//实数域多项式求和
double Polynomial(double *COE, int N, double X) // 系数数组 最高次幂 未知数的值
{
double Qua = 1;
double Sum = 0;
for (int i = 0; i <= N; i++) // X的n次项
{
Qua = 1;
for (int j = 1; j <= N - i; j++) // 求X的n次方
{
Qua *= X;
}
Sum += *(COE + i) * Qua; // 多项式求和
}
return Sum;
}
int main()
{
int N = 0; // 最高次幂
double X = 0; // 未知数
double COE[20] = {0.0}; // 各项系数
double ret = 0; // 结果
printf("请输入最高次幂:>");
scanf("%d", &N);
for (int i = 0; i <= N; i++)
{
printf("请输入%d次幂的系数:>", N - i);
scanf("%lf", COE + i);
}
printf("请输入X的值:>");
scanf("%lf", &X);
ret = Polynomial(COE, N, X);
printf("%.3f", ret);
return 0;
}