#include<stdio.h>
void polynomial(double *a, int &n);
int main()
{
double a[1000];
int n;
printf("请输入一元多项式的项数n(最大为10):\n");
scanf_s("%d", &n);
polynomial(a, n);
return 0;
}
void polynomial(double *a, int &n)
{
int i;
double x, p;
p = 0;
printf("请输入一元多项式的未知数x的赋值");
scanf_s("%lf", &x);
printf("请输入常数项:");
scanf_s("%lf", &a[0]);
for (i = 1; i <= n; i++)
{
printf("请输入%d项前的系数a:", n);
scanf_s("%lf", &a[i]);
}
for (i = 1; i <= n; i++)
{
p = p + a[i] * x;
x = x * x;
}
p = p + a[0];
printf("多项式的解为:%.2lf", p);
}
然后我敲第一和第三个测试用例进行测试,最后结果都和输出一致,但是第二个测试用例输出结果是和输出结果不一致,这是为什么?
这该怎么弄??