平抛运动

#include <stdio.h> #include <time.h> const double g=9.8;//重力加速度 void mydelay(long t) { clock_t start,end; start=clock(); while(1) { end=clock(); if(end-start>=t) break; } } void trace(double high,double speed)//high是高度,speed是速度 { int x,y; double t=0; printf("物体以%.2f 米/秒速度从%.2f 米高度水平抛出运行轨迹:/n/n",speed,high); puts("高度(单位:米)"); for(y=(int)high;y>=0;y--) { if((int)high-y==(int)(0.5*g*t*t)) { printf("%-3d%*c/n",y,(int)(speed*t),'*'); t+=0.5; } else printf("%d/n",y); mydelay(50);//模拟真实时间 } t-=0.5; printf(" %*c/n",(int)(speed*t),'*'); for(x=0;x<66;x+=5) printf("%-4d ",x); puts("(米)"); printf("/n/n共用时 %.2f 秒。/n",t); } int main(void) { trace(125.0,10.0); getchar(); return 0; }

你可能感兴趣的:(平抛运动)