这是我在做密立根油滴实验时,编写的解答程序,有很多的不足和存在错误,希望高手们能帮忙指点一二,在此不胜感激!我编写程序如下:
#include<stdio.h>
#include<math.h>
main( )
{int v1,v2,v3,v4,v5,t1,t2,t3,t4,t5,k;
float q,q1,eq,uq,tp,uta,utb,ut,vp,uva,uvb,uv;
printf("先计算和电压有关的几个数值vp,uva,uvb,uv:\n");
printf("请输入五组电压值:");
scanf("%d,%d,%d,%d,%d",&v1,&v2,&v3,&v4,&v5);
vp=(v1+v2+v3+v4+v5)/5;
uva=0.02/sqrt(3);
uva=sqrt(((v1-vp)*(v1-vp)+(v2-vp)*(v2-vp)+(v3-vp)*(v3-vp)+(v4-vp)*(v4-vp)+(v5-vp)*(v5-vp))/4);
uv=sqrt(uva*uva+uvb*uvb);
printf("求出值为:vp=%d,uva=%d,uvb=%d,uv=%d\n");
printf("*************************************************\n");
printf("现在求关于时间的几个数值:tp,uta,utb,ut\n");
printf("请输入五组相对应的时间值:");
scanf("%d,%d,%d,%d,%d",&t1,&t2,&t3,&t4,&t5);
tp=(t1+t2+t3+t4+t5)/5;
uta=sqrt((t1-tp)*(t1-tp)+(t2-tp)*(t2-tp)+(t3-tp)*(t3-tp)+(t4-tp)*(t4-tp)+(t5-tp)*(t5-tp))/4);
utb=0.01/sqrt(3);
ut=sqrt(uta*uta+utb*utb);
printf("求出值为:up=%d,uta=%d,utb=%d,ut=%d\n");
printf("*************************************************\n");
printf("先求与电荷有关的值:q,q1,k,uq,eq\n");
q1=((5.05e-15)/sqrt((tp*(1+0.028*sqrt(tp)))(tp*(1+0.028*sqrt(tp)))(tp*(1+0.028*sqrt(tp)))))*(1/vp);
k=q1/1.602e-19;
q=q1/k;
eq=sqrt((2*uv/vp)*(2*uv/vp)+(2*ut/tp)*(2*ut/tp));
uq=q*eq;
eq=eq/100;
printf("计算出值为:q=%f,q1=%f,k=%d,uq=%f,%eq=%f");
}