c新手吧 关注:8,550贴子:48,056
  • 6回复贴,共1

怎么运行不了?

只看楼主收藏回复

#include"graphics.h"
#include"math.h"
#include"conio.h"
#include"stdio.h"
#define PI 3.1415926
#define M PI/180
#define C 2*PI*60/60
#define l1 110
#define l2 430
#define l4 810
#define l5 (0.36*l4)
#define Ys6 40
#define l7 l4-Ys6
void dtmn();
void pist(float x0,float y0,float l,float h, float theta);
void slide(float x0,float y0,float x1,float h);
void pirot(float x0,float y0,float l);
void sgd();
void cur();
/*****************************主函数****************************************/
main()
{int Q2,i=0,j=0,Q_2[72];
float Q4,Q41,Q411,w3,a3,Q5,Q51;
float Q511,sA,sA1,sA11,Se,w4,Ve,Se1,a4,Se11;
float S_e[72],S_e1[72],S_e11[72],Q_511[72];
FILE *fl;
if((fl=fopen("mydata.txt","w"))==NULL)
{printf("mydata.txt cannot open!\n");
exit(0);
}
/*int gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\turboc2");
cleardevice();*/
clrscr();
printf(" zhuanjiao weiyi sudu jiaojiasudu jiasudu \n");
for(Q2=0;Q2<=360;Q2+=5)
{i++;
if(i%12==0){getch();
printf(" zhuanjiao weiyi sudu jiaojiasudu jiasudu\n");
}
if(Q2>=0&&Q2<90||Q2>270&&Q2<=360)
{Q4=atan((l2+l1*sin(Q2*M))/(l1*cos(Q2*M)));Q4/=M;}
else if(Q2==90||Q2==270)
{Q4=90;}
else if(Q2>90&&Q2<180)
{Q4=PI-atan((l2+l1*sin(Q2*M))/(-l1*cos(Q2*M)));Q4/=M;}
else if(Q2>=180&&Q2<270)
{Q4=PI-atan((l2+l1*sin(Q2*M))/(-l1*cos(Q2*M)));Q4/=M;}
if(Q4==90) sA=l2+l1;
else if(Q4==270) sA=l2-l1;
else
sA=l1*cos(Q2*M)/cos(Q4*M);
sA1=-l1*C*sin((Q2-Q4)*M);
Q41=-l1*C*cos((Q2-Q4)*M)/sA;
w3=Q41;
Q411=(C*C*l1*sin((Q4-Q2)*M)-w3*sA1)/sA;
a3=Q411;
if(((l7-l4*sin(Q4*M))/l5)>=0&&((l7-l4*sin(Q4*M))/l5)<=1)
Q5=180-asin(l7-(l4*sin(Q4*M))/l5)/M;
else if(((l7-l4*sin(Q4*M))/l5)>=-1&&((l7-l4*sin(Q4*M))/l5)<=0)
Q5=180+asin((l7-l4*sin(Q4*M))/l5)/M;
Se=l4*cos(Q4*M)+l5*cos(Q5*M);
Q51=-w3*l4*cos(Q4*M)/(l5*cos(Q5*M));
w4=Q51;
Se1=-w3*l4*sin((Q4-Q5)*M)/cos(Q5*M);
Q511=(Q41*Q41*l4*sin(Q4*M)+Q51*Q51*l5*sin(Q5*M)-Q411*l4*cos(Q4*M))/(l5*cos(Q5*M));
Se11=-(a3*l4*sin((Q4-Q5)*M)+w3*w3*l4*cos((Q4-Q5)*M)-w4*w4*l5)/cos(Q5*M);
S_e[j]=Se;
S_e1[j]=Se1;
Q_511[j]=Q511;
S_e11[j]=Se11;
Q_2[j]=Q2;
printf("%7d %-7.3f %-7.3f %-7.3f %-7.3f\n",Q_2[j],S_e[j],
S_e1[j],Q_511[j],S_e11[j]);
fprintf(fl,"%7d %-7.3f %-7.3f %-7.3f %-7.3f\n",Q_2[j],S_e[j],
S_e1[j],Q_511[j],S_e11[j]);
}
j++;
fclose(fl);
cur();
dtmn();
sgd();
}
/**********************速度,加速度,位移曲线图函数*************************/
void cur()
{/*float w1=2*PI,L1=110,L4=135,L61=490,L3=540,L6=380; */
float Q4,Q2,sA,w3,sA1,sA11,Se,Se1,Se11,a3,a4,Q411,Q5,Q51,w4;
int gd=DETECT, gmode,i;
initgraph(&gd,&gmode,"c:\\turboc2");
clrscr();
for(Q2=0;Q2<=2*PI;Q2+=1.0*PI/1000)
{if(Q2>=0&&Q2<PI/2||Q2>PI*1.5&&Q2<=2*PI)
Q4=atan((l2+l1*sin(Q2))/(l1*cos(Q2)));
else if(Q2==PI/2.0||Q2==1.5*PI)
Q4=PI/2;
else if(Q2>PI/2&&Q2<PI)
Q4=PI-atan((l2+l1*sin(Q2))/(-l1*cos(Q2)));
else
Q4=PI-atan((l2+l1*sin(Q2))/(-l1*cos(Q2)));
if(Q2!=PI/2&&Q2!=1.5*PI)
sA=l1*cos(Q2)/cos(Q4);
else if(Q2==PI/2)
sA=l1+l2;
else
sA=l2-l1;
/* sA1=-l1*w1*sin(Q2-Q4); */
w3=l1*C*cos(Q2-Q4)/sA;
Q411=(C*C*l1*sin(Q4-Q2)-2*w3*sA)/sA;
a3=Q411;
if(((l7-l4*sin(Q4))/l5)>=0&&((l7-l4*sin(Q4))/l5)<=1)
Q5=PI-asin((l7-l4*sin(Q4))/l5);
else if(((l7-l4*sin(Q4))/l5)>=-1&&((l7-l4*sin(Q4))/l5)<0)
Q5=PI+asin((l7-l4*sin(Q4))/l5);
Se=l4*cos(Q4)+l5*cos(Q5);
Q51=-w3*l4*cos(Q4)/(l5*cos(Q5));
w4=Q51;
Se1=-w3*l4*sin(Q4-Q5)/cos(Q5);
/*Q511=(Q41*Q41*l4*sin(Q4)+Q51*Q51*l5*sin(Q5)-Q411*Q411*l4*cos(Q4))/(l5*cos(Q5));*/
Se11=-(a3*l4*sin(Q4-Q5)+w3*w3*l4*cos(Q4-Q5)-w4*w4*l5)/cos(Q5);
line(100,200,500,200);
setcolor(5);
line(492,201,500,200);
line(492,199,500,200);
line(100,10,100,350);
setcolor(5);
line(99,18,100,10);
line(101,18,100,10);
putpixel(100+Q2*180/PI,200-Se/5,1); /*绘制位移曲线*/
putpixel(100+Q2*180/PI,200-Se1/100,2); /*绘制速度曲线*/
putpixel(100+Q2*180/PI,200-Se11/100,4);} /*绘制加速度曲线*/
setcolor(10);
settextjustify(CENTER_TEXT,0);
outtextxy(300,300,"RED___JIASUDU");
outtextxy(300,330,"GREEN___SUDU");
outtextxy(300,360,"BLUE___WEIYI");
/* outtextxy(300,50,"SUDU JIASUDU WEIYI GUAN XI QU XIAN TU");*/
outtextxy(300,50,"SUDU JIASUDU WEIYI GUAN XI QU XIAN TU");
getch();
closegraph();}
/***************************运动模拟图函数*****************************/
void dtmn()
{
int gd=DETECT,gmode,n;
initgraph(&gd,&gmode,"c:\\turboc2");
cleardevice();
do
{setbkcolor(0);
sgd();
}while(!kbhit());
getch();
}
/****************************导轨函数 *********************************/
void slide(float x0,float y0,float x1,float h)
{float xr;
int i,n;
xr=x0+x1;
line(x0,y0,xr,y0);
n=x1/h;
for(i=0;i<=n;i++)
{moveto(x0+i*h,y0+h);
lineto(x0+(i+1)*h,y0);
}
}
/************************摇块函数**************************************/
void pist(float x0,float y0,float l,float h,float theta)
{float x,y;
x=x0-cos(theta)*l/2+h/2*sin(theta);
y=y0+l/2*sin(theta)+h/2*cos(theta);
moveto(x,y);
linerel(l*cos(theta),-l*sin(theta)); /***绘制轮廓线******/
linerel(-h*sin(theta),-h*cos(theta));
linerel(-l*cos(theta),l*sin(theta));
lineto(x,y);
}
/*************************支点函数**************************************/
void pirot(float x0,float y0,float l)
{/*float PI=3.1415926;*/
float x,y;
int i,n;
int h=4;
setcolor(6);
circle(x0,y0,3);
setcolor(9);
x=x0-l/2;
y=y0+sin(PI/3)*l;
moveto(x0,y0);
lineto(x,y);
linerel(18,0);
lineto(x0,y0);
n=l/4;
for(i=0;i<=n;i++)
{moveto(x+i*h,y+h);
lineto(x+(i+1)*h,y);
}
}
/************************连杆,摇块,导轨函数 ****************************/
void sgd()
{int i;
int x04,y04,x02,y02;
int l04b=l4/2;
int l02a=l1/2;
float lbc=l5/2;
float xa,ya,xb,yb,xc,yc,l;
float ss,theta;
for(i=0;i<=63;i++) /*****动态模拟******/
{ss=i*0.1;
/*坐标计算*/
x04=400; x02=400;
y04=400; y02=225;
xa=x02+l02a*cos(ss);
ya=y02+l02a*sin(ss);
l=sqrt((xa-x04)*(xa-x04)+(ya-y04)*(ya-y04));
xb=x04+(xa-x04)*l04b/l;
yb=y04+(ya-y04)*l04b/l;
yc=135;
xc=xb-sqrt(lbc*lbc-(yb-yc)*(yb-yc));
theta=-atan((ya-y04)/(xa-x04));
setcolor(6);
cleardevice();
circle(xb,yb,3);
circle(xa,ya,3);
circle(xc,yc,3);
setcolor(9);
line(50,135,500,135);
rectangle(xc+7,yc+6,xc-7,yc-6); /*绘制滑块C*/
line(x02,y02,xa,ya);
line(xc,yc,xb,yb);
line(xb,yb,x04,y04);
setcolor(9);
pirot(x02,y02,16); /*绘制支点X04,X02*/
pirot(x04,y04,16);
pist(xa,ya,20,10,theta); /*绘制滑块A*/
slide(60,135,100,10);
slide(500,135,570,10);
setcolor(2);
settextstyle(3,0,2);
outtextxy(200,30,"DAOGAN YUNDONG MONI");
outtextxy(200,440,"PRESS ANY KEY TO RETURN");
outtextxy(200,420,"PRESS BREAK TO STOP");
delay(1000);}
}


1楼2017-07-12 21:12回复
    老是出错


    2楼2017-07-12 21:13
    回复
      2026-07-15 00:18:12
      广告
      不感兴趣
      开通SVIP免广告
      有大神能把运行之后的文件能发给我吗?谢谢了!!!关系到毕业啊~~


      3楼2017-07-12 21:14
      回复
        求执行文件


        4楼2017-07-12 21:16
        回复
          求顶


          5楼2017-07-12 21:32
          回复
            ...


            6楼2017-07-12 22:20
            回复
              这么长,连个分隔符都没有。。。


              来自Android客户端7楼2017-07-13 01:00
              回复