在C环境下编程实现:由4个控制点生成3次贝塞尔曲线 #include
float fang(float n,int k) { if(k==0) return 1; return pow(n,k); }
float benkn(int n,int k,float t) { return zuhe(n,k)*fang(t,k)*fang(1-t,n-k); }
void main() { float t[11]={0},x[4],y[4],x1[11],y1[11],s=0.0; int i; for(i=1;i<11;i++) {s=s+0.1;t[i]=s;} printf(\ for(i=0;i<4;i++) scanf(\ printf(\ for(i=0;i<4;i++) scanf(\ for(i=0;i<11;i++) { x1[i]=x[0]*benkn(3,0,t[i])+x[1]*benkn(3,1,t[i])+x[2]*benkn(3,2,t[i])+x[3]*benkn(3,3,t[i]);
y1[i]=y[0]*benkn(3,0,t[i])+y[1]*benkn(3,1,t[i])+y[2]*benkn(3,2,t[i])+y[3]*benkn(3,3,t[i]); }
printf(\ printf(\ for(i=0;i<11;i++) {
printf(\ }
printf(\ for(i=0;i<11;i++) { printf(\ } printf(\ for(i=0;i<11;i++) { printf(\ } }