《人与动物的故事300》:拉格朗日问题 C语言怪现象

来源:百度文库 编辑:高考问答 时间:2024/04/28 16:45:09
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
//#define N 4
float loggerangri(int n,float *x,float x0,float *f);

void main()
{ int i;
int N;
float x[20];
float f[20];
float x0,f0;
printf("请输入数组的个数:\n");
scanf("%d",&N);
printf("请输入x[N]:\n");
for( i=0;i<N;i++)
scanf("%f",&x[i]);
printf("请输入f[N]:\n");
for( i=0;i<N;i++)
scanf("%f",&f[i]);
printf("请输入x0:\n");
scanf("%f",&x0);
f0=loggerangri(N,x,x0,f);
printf("%.3f %.3f \n",x0,f0);

return 0;
}

float loggerangri(int n,float *x,float x0,float *f)

{

float s,y=0.0;
int j,k;
for(k=0;k<n;k++)
{
s=1.0;
for(j=0;j<n;j++)
{if(j==k)
continue;
s*=(x0-x[j])/(x[k]-x[j]);

}
y+=f[k]*s;

}

return y;
}
不知道为什么出错

错误 df.c 4: 说明语法错误
错误 df.c 4: 非法字符 '#' (0x23)
警告 df.c 26: void类型的函数不应有返回值在 main 函数中
错误 df.c 31: 与'loggerangri'声明中的类型不匹配

这些错误都是最基本的哦
简单的很的事哦
自己好好看一下书了