数控技术c语言直线、圆弧插补程序.doc

数控技术c语言直线、圆弧插补程序.doc

ID:56718645

大小:20.50 KB

页数:3页

时间:2020-07-06

数控技术c语言直线、圆弧插补程序.doc_第1页
数控技术c语言直线、圆弧插补程序.doc_第2页
数控技术c语言直线、圆弧插补程序.doc_第3页
资源描述:

《数控技术c语言直线、圆弧插补程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、以下是直线差补c语言程序,后面还有圆弧差补,数控老师布置的作业,没办法,自己编的,运行时没问题,保证质量,#include#includemain(){intx,y,x2,y2,dx,dy,n,k,i,f,a;printf("请输入起始点:");scanf("%d%d",&x,&y);printf("请输入终止点:");scanf("%d%d",&x2,&y2);dx=abs(x2-x);dy=abs(y2-y);n=dx+dy;printf("步数n=%d",n);{if(x2>0)if(y2>0)k=1;elsek=4;elsei

2、f(y2>0)k=2;elsek=3;}printf("相限k=%d",k);for(i=0,f=0;i=0){switch(k){case1:x++;printf("%d%d",x,y);f-=dy;continue;case2:y++;printf("%d%d",x,y);f-=dx;continue;case3:x--;printf("%d%d",x,y);f-=dy;continue;case4:y--;printf("%d%d",x,y);f-=dx;continue;}}else{switch(k){case1:y++;pr

3、intf("%d%d",x,y);f+=dx;continue;case2:x--;printf("%d%d",x,y);f+=dy;continue;case3:y--;printf("%d%d",x,y);f+=dx;continue;case4:x++;printf("%d%d",x,y);f+=dy;continue;}}}下面为圆弧差补c语言程序#include"stdio.h"#include"math.h"#include"ctype.h"main(){intX0,Y0,Xe,Ye,a,I,J,Ie,Je,f;printf("请输入圆弧上的两个点:"

4、);scanf("%d%d%d%d",&X0,&Y0,&Xe,&Ye);printf("(X0,Y0)=(%d,%d),(Xe,Ye)=(%d,%d)",X0,Y0,Xe,Ye);printf("请选择圆弧加工方向,逆时针加工请输入1,顺时针加工请输入2");scanf("%d",&a);I=X0,J=Y0,Ie=Xe,Je=Ye,f=0;switch(a){case1:{loop:while((Ie!=I)

5、

6、(Je!=J)){if(I>=0&&J>0){if(f>=0){f=f-2*I+1;I=I-1;printf("f=%dI=%dJ=%d",f,I,J);}els

7、e{f=f+2*J+1;J=J+1;printf("f=%dI=%dJ=%d",f,I,J);}gotoloop;}if(I<0&&J>=0){if(f>=0){f=f-2*J+1;J=J-1;printf("f=%dI=%dJ=%d",f,I,J);}else{f=f-2*I+1;I=I-1;printf("f=%dI=%dJ=%d",f,I,J);}gotoloop;}if(I<=0&&J<0){if(f>=0){f=f+2*I+1;I=I+1;printf("f=%dI=%dJ=%d",f,I,J);}else{f=f-2*J+1;J=J-1;printf(

8、"f=%dI=%dJ=%d",f,I,J);}gotoloop;}if(I>0&&J<=0){if(f>=0){f=f+2*J+1;J=J+1;printf("f=%dI=%dJ=%d",f,I,J);}else{f=f+2*I+1;I=I+1;printf("f=%dI=%dJ=%d",f,I,J);}gotoloop;}}}case2:{loop1:while((Ie!=I)

9、

10、(Je!=J)){if(I>=0&&J>0){if(f>=0){f=f-2*J+1;J=J-1;printf("f=%dI=%dJ=%d",f,I,J);}else{f=f+2*I+1

11、;I=I+1;printf("f=%dI=%dJ=%d",f,I,J);}gotoloop1;}if(I<0&&J>=0){if(f>=0){f=f+2*I+1;I=I+1;printf("f=%dI=%dJ=%d",f,I,J);}else{f=f+2*J+1;J=J+1;printf("f=%dI=%dJ=%d",f,I,J);}gotoloop1;}if(I<=0&&J<0){if(f>=0){f=f+2*J+1;J=J+1;printf("f=%dI=%dJ=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。