您当前的位置:首页 >  党建材料 >  入党志愿书 > 内容

CADCAM实验报告

无忧文档网    时间: 2020-08-20 21:09:03     阅读:

二叉树的遍历实验 一、实验名称:二叉树的遍历实验。

二、实验目的:
1、掌握CAD/CAM系统中常用的数据结构二叉树的概念、存储结构以及二叉树遍历技术。

2、熟练应用C语言编写二叉树的建立,以及用先序、中序、后序遍历方法遍历二叉树的程序。

三、实验内容 用TC或VC编程,将图2-14所示的二叉树建立链表存储结构,并分别用先序、中序、后序遍历方法遍历该二叉树α 1、程序流程图 2、程序 #include<stdio.h> #include<malloc.h> struct btree { char data; struct btree *lchild,*rchild; }*node[9]; void preorder(struct btree *node) { if(!node) return ; printf(“%c“,node->data); preorder(node->lchild); preorder(node->rchild); } void inorder(struct btree *node) { if(!node) return ; inorder(node->lchild); printf(“%c“,node->data); inorder(node->rchild); } void postorder(struct btree *node) { if(!node) return ; postorder(node->lchild); postorder(node->rchild); printf(“%c“,node->data); } void main() { int i; for(i=0;i<9;i++) { node[i]=(struct btree *)malloc(sizeof(struct btree)); node[i]->data='A'+i; node[i]->lchild=NULL; node[i]->rchild=NULL; } node[0]->lchild=node[1]; node[0]->rchild=node[2]; node[1]->lchild=node[3]; node[2]->lchild=node[4]; node[2]->rchild=node[5]; node[3]->lchild=node[6]; node[3]->rchild=node[7]; node[4]->rchild=node[8]; printf(“按先序遍历:“); preorder(node[0]); printf(“\n按中序遍历:“); inorder(node[0]); printf(“\n按后序遍历:“); postorder(node[0]); getchar(); return 0; } 实验结果如下:
三、主要仪器设备 计算机(C++语言环境) 实验二 数表的程序化处理 一、 实验名称:数表的程序化处理 二、实验目的 1、 掌握对工程手册和设计规范中的各种数据表格(包括数值、数表、线图)的计算机处理技术。

2、 熟练应用C语言或VC金星编程数据处理程序。

三、 实验内容 用TC或VC编写一个线性插值程序,以下表为基本节点参数,插值计算90°-160°范围内任意角度的包角修正系数Kα。

α/(°) 90 100 110 120 130 140 150 160 Kα 0.68 0.74 0.79 0.83 0.86 0.89 0.92 0.95 1、程序流程图 2、程序 #include<stdio.h> #include<math.h> #include<stdlib.h> void main() { int i,j; int a[8]={90,100,110,120,130,140,150,160}; double k[8]={0.68,0.74,0.79,0.83,0.86,0.89,0.92,0.95}; double m; for(;;) { do { printf(“请输入包角值:(包角范围为90°至160°)\n“); scanf(“%d“,&j); if(j<90||j>160) { printf(“包角输入错误,请重新输入。\n“); printf(“按回车键继续查询,按Ctrl+C键退出\n“); getchar(); getchar(); system(“cls“); } }while(j<90||j>160); for(i=0;i<8;i++) { if(j==a[i]) m=k[i]; if(j>a[i]&&j<a[i+1]) m=(k[i+1]*(j-a[i])+k[i]*(a[i+1]-j))/(a[i+1]-a[i]); } printf(“包角为%d°的包角修正系数为%.3lf\n“,j,m); printf(“请按任意键继续查询,按Ctrl+C键退出\n“); getchar(); getchar(); system(“cls“); } } 实验三 机械零件三维造型 一、 实验目的 四、 了解三维造型技术的基本原理;

五、 熟悉三维造型软件的基本使用方法;

六、 掌握用三维造型软件构造三维实体零件的步骤。

二、 实验内容 用ProE构造支架零件 三、 实验报告 1、 三维零件模型 2、 零件构成过程是CSG树 实验四 排料图编程绘制 3、 实验目的 七、 熟悉AutoCAD中的二次开发工具AutoLISP的各项功能函数;

八、 了解AutoLISP的编程过程和方法;

九、 掌握在AutoCAD下实现排料图的绘制技术。

4、 实验内容 已知板材尺寸为L×B,在该板料上气割若干个半径为R的圆板,如果不计割缝,按实验图中排版方式,问用这块板最多可以割下多少块圆板?编程绘制出排料图。

说明:
1.L=2000,B=1000,R=(班号*10).学号,如2班3号,R=20.03。

2.圆板数用CN变量表示。

3.输出圆板数,并绘制排料图。

5、 实验报告 1、画出程序流程图 2、编写程序并调试运行出程序结果 (1)实验程序 (defun c:PL() (setq L (getreal “\n请输入板料长度L:“)) (setq B (getreal “\n请输入板料厚度B:“)) (setq R 50.17) (setq CL (fix (/ L (* 2 R)))) (setq CB (fix (/ B (* 2 R)))) (command “zoom“ “w“ '(0 0) '(L B)) (setq p1 (getpoint “\n输入绘图基点p1“)) (setq p2 (polar p1 (/ pi 2) B)) (setq p3 (polar p2 0 L)) (setq p4 (polar p1 0 L)) (command “pline“ p1 p2 p3 p4 “c“) (setq M 0) (while (< M CB) (setq ph (polar p1 (/ pi 2) (* R (+ (* M 2) 1)))) (setq pc (polar ph 0 R)) (setq N 0) (while (< N CL) (command “circle“ pc R) (setq pc (polar pc 0 (* 2 R))) (setq N (+ N 1)) ) (setq M (+ M 1)) ) (setq CN (* CL CB)) (prompt (strcat “\n-----圆板数:“ (itoa CN) “-----\n“)) ) (2)运行结果 输入:L=2000,B=1000 输出NC=171

《CADCAM实验报告.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:

文档为doc格式

相关热搜

《CADCAM实验报告.doc》

VIP请直接点击按钮下载本文的Word文档下载到电脑,请使用最新版的WORD和WPS软件打开,如发现文档不全可以联系客服申请处理。

文档下载
VIP免费下载文档

浏览记录