哈尔滨工业大学材料力学编程题c语言程序

上传人:仙*** 文档编号:35085368 上传时间:2021-10-25 格式:DOC 页数:14 大小:883.50KB
收藏 版权申诉 举报 下载
哈尔滨工业大学材料力学编程题c语言程序_第1页
第1页 / 共14页
哈尔滨工业大学材料力学编程题c语言程序_第2页
第2页 / 共14页
哈尔滨工业大学材料力学编程题c语言程序_第3页
第3页 / 共14页
资源描述:

《哈尔滨工业大学材料力学编程题c语言程序》由会员分享,可在线阅读,更多相关《哈尔滨工业大学材料力学编程题c语言程序(14页珍藏版)》请在装配图网上搜索。

1、材料力学上机课程作业:C语言编写1一个力作用下的任意截面的弯矩,挠度。程序:#include #includedouble Mz,l,a,x,v,E,I,b,F;main()printf(请输入长度ln);scanf(%lf,&l);printf(请输入长度an);scanf(%lf,&a);printf(请输入弹性模量En);scanf(%lf,&E);printf(请输入极惯性矩In);scanf(%lf,&I);printf(请输入力Fn);scanf(%lf,&F);printf(请输入xn);scanf(%lf,&x);b=l-a;if(x0&xa&xl)Mz=F*a*(l-x)/l

2、;v=-F*b*(l/b*pow(x-a,3)+(l*l-b*b)*x-x*x*x)/(6*E*I*l);printf(Mz=%fn,Mz);printf(v=%fn,v);elseprintf(數值溢出n);运算结果:选取材料的L=1m,E=4.5GPa。I=0.0001 m4,F=1000N,a=0.6m,x=0.4m;Mz=160.00NmV=-0.000040m2.一个力偶作用下的任意截面的弯矩,挠度。编程:#include #includedouble Mz,l,a,x,v,E,I,b,M;main() printf(请输入长度ln); scanf(%lf,&l); printf(请

3、输入长度an); scanf(%lf,&a); printf(请输入弹性模量En); scanf(%lf,&E); printf(请输入极惯性矩In); scanf(%lf,&I); printf(请输入弯矩Mn); scanf(%lf,&M); printf(请输入xn); scanf(%lf,&x); b=l-a; if(x0&xa&xl) Mz=M*(l-x)/l; v=M*(-x*x*x+3*l*(x-a)*(x-a)+(l*l-3*b*b)*x); printf(Mz=%fn,Mz); printf(v=%fn,v); else printf(數值溢出n); 运算结果:选取材料的L=

4、1m,E=4.5GPa。I=0.0001 m4,M=1000Nm,a=0.6m,x=0.4m;Mz=400.00NmV=0.000053m3.一段分布力作用下的任意截面的弯矩挠度编程:#include #includedouble q,l,c,d,x,E,I,v,Mz;double C,D,Ec,Fc;double FR1,FR2;/*函数功能:奇异函数*/double qiyi(double x,double y)if(xy)return x-y;main() printf(请输入长度ln); scanf(%lf,&l); printf(请输入弹性模量En); scanf(%lf,&E);

5、printf(请输入极惯性矩In); scanf(%lf,&I); printf(请输入分布力qn); scanf(%lf,&q); printf(请输入长度cn); scanf(%lf,&c); printf(请输入长度dn); scanf(%lf,&d); printf(请输入xn); scanf(%lf,&x);C=qiyi(x,c);D=qiyi(x,d);FR2=(-q*(d*d-c*c)/2)/l;/求支反力FR1=-q*(d-c)-FR2;Ec=-(FR1*pow(l,3)/6-q*pow(l-c,4)/24+q*pow(l-d,4)/24)/E/I/l;Fc=0;Mz=(FR1

6、*x-0.5*q*C*C+0.5*q*D*D);v=(FR1*pow(x,3)/6-q*pow(C,4)/24+q*pow(D,4)/24)/E/I+Ec*x;printf(截面的弯矩为:%fn,Mz);printf(截面的挠度为:%fn,v);运算结果:选取材料的L=1m,E=4.5GPa。I=0.0001 m4,q=1000N,c=0.6m,d=0.8m,x=0.4m;Mz=-24.00NmV=0.000008m4.n个力共同作用下的任意截面的弯矩,挠度。编程:#include #includedouble Mzs,l,a10,x,vs,E,I,F10,Mz10,v10;int i,nF;

7、main()printf(请输入长度ln);scanf(%lf,&l);printf(请输入弹性模量En);scanf(%lf,&E);printf(请输入极惯性矩In);scanf(%lf,&I);printf(请输入集中载荷F的个nF:);scanf(%d,&nF);printf(请输入集中载荷F的值和位置a:);for(i=0;inF;i+)scanf(%lf%lf,&Fi,&ai);printf(请输入xn);scanf(%lf,&x);for(i=0;i0&xai&xl)Mzi=Fi*ai*(l-x)/l;vi=-Fi*(l-ai)*(l/(l-ai)*pow(x-ai,3)+(l*

8、l-(l-ai)*(l-ai)*x-x*x*x)/(6*E*I*l);Mzs=Mzs+Mzi;vs=vs+vi; printf(截面的弯矩为%f,Mzs); printf(截面的挠度为%f,vs);运算结果:选取材料的L=1m,E=4.5GPa。I=0.0001 m4,F1=1000N,F2=2000N,a1=0.6m,a2=0.8m,x=0.4m;Mz=320.00NmV=-0.000088m5.h个力偶共同作用作用下的任意截面的弯矩,挠度编程:#include #includedouble Mz10,l,b10,x,v10,E,I,M10,Mzs,vs;int i,nM;main() pr

9、intf(请输入长度ln); scanf(%lf,&l); printf(请输入弹性模量En); scanf(%lf,&E); printf(请输入极惯性矩In); scanf(%lf,&I);printf(请输入外力偶M的个数nM);scanf(%d,&nM);printf(请输入外力偶值和位置b:);for(i=0;inM;i+)scanf(%lf%lf,&Mi,&bi); printf(请输入xn); scanf(%lf,&x); for(i=0;i0&xbi&xl) Mzi=Mi*(l-x)/l; vi=Mi*(-x*x*x+3*l*(x-bi)*(x-bi)+(l*l-3*(l-bi

10、)*(l-bi)*x); Mzs=Mzs+Mzi;vs=vs+vi; printf(截面的弯矩为%f,Mzs); printf(截面的挠度为%f,vs);运算结果:选取材料的L=1m,E=4.5GPa。I=0.0001 m4,M1=1000Nm,M2=2000Nm,b1=0.6m,b2=0.8m,x=0.4m;Mz=1200.00NmV=-0.000267m6.m段分布力共同作用下的任意截面的弯矩,挠度编程:#include #includedouble q10,l,c10,d10,x,E,I,v10,Mz10,Mzs,vs;double C10,D10,Ec10,Fc10;double FR

11、110,FR210;int i,nq;/*函数功能:奇异函数*/double qiyi(double x,double y)if(xy)return x-y;main() printf(请输入长度ln); scanf(%lf,&l); printf(请输入弹性模量En); scanf(%lf,&E); printf(请输入极惯性矩In); scanf(%lf,&I);printf(请输入均布力的个数nq);scanf(%d,&nq);printf(请输入分布力q的值和位置c,d:);for(i=0;inq;i+)scanf(%lf%lf%lf,&qi,&ci,&di); printf(请输入x

12、n); scanf(%lf,&x);for(i=0;inq;i+)Ci=qiyi(x,ci);Di=qiyi(x,di);FR2i=(-qi*(di*di-ci*ci)/2)/l;/求支反力FR1i=-qi*(di-ci)-FR2i;Eci=-(FR1i*pow(l,3)/6-qi*pow(l-ci,4)/24+qi*pow(l-di,4)/24)/E/I/l;Mzi=(FR1i*x-0.5*qi*Ci*Ci+0.5*qi*Di*Di);vi=(FR1i*pow(x,3)/6-qi*pow(Ci,4)/24+qi*pow(Di,4)/24)/E/I+Eci*x;Mzs=Mzs+Mzi;vs=v

13、s+vi; printf(截面的弯矩为%f,Mzs); printf(截面的挠度为%f,vs);运算结果:选取材料的L=1m,E=4.5GPa。I=0.0001 m4,q1=1000Nm,q2=2000Nm,c1=0.4m,c2=0.5m,d1=0.6m,d2=0.7m,x=0.4m;Mz=-104.00NmV=0.000040m7.n个力,h个力偶,m段分布力共同作用下的任意截面的弯矩,挠度。编程:#include#includedouble F10,M10,q10;/定义各个载荷大小的数组double Mz10,v10,l,E,I,Mzs,vs,Mzmax,vmax,Mzmin,vmin;

14、/定义杆的基本参数double a10,b10,c10,d10;/定义各个载荷的横坐标double A10,B10,C10,D10;/定义奇异函数中间变量double Ec10,Fc10;/定义积分常数double x;/定义任一截面横坐标double FR110,FR210;/定义支反力FR1,FR2int i,Q;/定义循环变量int nM,nF,nq,nn;/定义载荷个数/*函数功能:奇异函数*/double qiyi(double x,double y)if(xy)return x-y;/*函数功能:初始数据输入*/void ps()printf(请输入长度ln);scanf(%lf,

15、&l);printf(请输入弹性模量En);scanf(%lf,&E);printf(请输入极惯性矩In);scanf(%lf,&I);printf(请输入集中载荷F的个nF:);scanf(%d,&nF);printf(请输入集中载荷F的值和位置a:);for(i=0;inF;i+)scanf(%lf%lf,&Fi,&ai);printf(请输入外力偶M的个数nM);scanf(%d,&nM);printf(请输入外力偶值和位置b:);for(i=0;inM;i+)scanf(%lf%lf,&Mi,&bi);printf(请输入均布力的个数nq);scanf(%d,&nq);printf(请

16、输入分布力q的值和位置c,d:);for(i=0;inn)nn=nM;if(nqnn)nn=nq;main() ps();/初始数据输入 for(i=0;inn;i+)Ai=qiyi(x,ai);Bi=qiyi(x,bi);Ci=qiyi(x,ci);Di=qiyi(x,di);FR2i=(Mi-Fi*ai-qi*(di*di-ci*ci)/2)/l;/求支反力FR1i=-(Fi+qi*(di-ci)-FR2i;Eci=-(Mi*pow(l-bi),2)/2+Fi*pow(l-ai),3)/6+FR1i*pow(l,3)/6-qi*pow(l-ci,4)/24+qi*pow(l-di,4)/2

17、4)/E/I/l;/求积分常数if(xbi)Q=1;Mzi=(Mi*Q+Fi*Ai+FR1i*x)-qi*pow(Ci,2)/2+qi*pow(Di,2)/2;vi=(Mi*pow(Bi,2)/2+Fi*pow(Ai,3)/6+FR1i*pow(x,3)/6)/(E*I)-(qi*pow(Ci,4)/24-qi*pow(Di,4)/24)/(E*I)+Eci*x;Mzs=Mzs+Mzi;vs=vs+vi; printf(截面的弯矩为%f,Mzs); printf(截面的挠度为%f,vs);运算结果:选取材料的L=1m,E=4.5GPa。I=0.0001 m4,F1=1000N,F2=2000N

18、,a1=0.6m,a2=0.8m,M1=1000Nm,M2=2000Nm,b1=0.6m,b2=0.8m,q1=1000Nm,q2=2000Nm,c1=0.4m,c2=0.5m,d1=0.6m,d2=0.7m,x=0.4m;Mz=-1624.00NmV=0.000395m8.n个力,h个力偶,m段分布力共同作用下的最大弯矩,最大挠度。编程:#include#includedouble F10,M10,q10;/定义各个载荷大小的数组double Mz10,v10,l,E,I,Mzs100,vs100,Mzmax,vmax,Mzmin,vmin;/定义杆的基本参数double a10,b10,c

19、10,d10;/定义各个载荷的横坐标double A10,B10,C10,D10;/定义奇异函数中间变量double Ec10,Fc10;/定义积分常数double x;/定义任一截面横坐标double FR110,FR210;/定义支反力FR1,FR2int i,Q;/定义循环变量int j;int nM,nF,nq,nn;/定义载荷个数/*函数功能:奇异函数*/double qiyi(double x,double y)if(xy)return x-y;/*函数功能:初始数据输入*/void ps()printf(请输入长度ln);scanf(%lf,&l);printf(请输入弹性模量E

20、n);scanf(%lf,&E);printf(请输入极惯性矩In);scanf(%lf,&I);printf(请输入集中载荷F的个nF:);scanf(%d,&nF);printf(请输入集中载荷F的值和位置a:);for(i=0;inF;i+)scanf(%lf%lf,&Fi,&ai);printf(请输入外力偶M的个数nM);scanf(%d,&nM);printf(请输入外力偶值和位置b:);for(i=0;inM;i+)scanf(%lf%lf,&Mi,&bi);printf(请输入均布力的个数nq);scanf(%d,&nq);printf(请输入分布力q的值和位置c,d:);fo

21、r(i=0;inn)nn=nM;if(nqnn)nn=nq;main() ps();/初始数据输入 for(j=0;j99;j+)x=j*l/100;for(i=0;inn;i+)Ai=qiyi(x,ai);Bi=qiyi(x,bi);Ci=qiyi(x,ci);Di=qiyi(x,di);FR2i=(Mi-Fi*ai-qi*(di*di-ci*ci)/2)/l;/求支反力FR1i=-(Fi+qi*(di-ci)-FR2i;Eci=-(Mi*pow(l-bi),2)/2+Fi*pow(l-ai),3)/6+FR1i*pow(l,3)/6-qi*pow(l-ci,4)/24+qi*pow(l-d

22、i,4)/24)/E/I/l;/求积分常数if(xbi)Q=1;Mzi=(Mi*Q+Fi*Ai+FR1i*x)-qi*pow(Ci,2)/2+qi*pow(Di,2)/2;vi=(Mi*pow(Bi,2)/2+Fi*pow(Ai,3)/6+FR1i*pow(x,3)/6)/(E*I)-(qi*pow(Ci,4)/24-qi*pow(Di,4)/24)/(E*I)+Eci*x;Mzsj=Mzsj+Mzi;vsj=vsj+vi;if (MzsjMzmax)Mzmax=Mzsj;if(vsjvmax)vmax=vsj;if (MzsjMzmin)Mzmin=Mzsj;if(vsjvmin)vmin=

23、vsj;printf(最大弯矩为Mzmax=%fn,Mzmax);printf(最大挠度为vmax=%fn,vmax);printf(最小弯矩为Mzmin=%fn,Mzmin);printf(最小挠度为vmin=%fn,vmin);运算结果:选取材料的L=1m,E=4.5GPa。I=0.0001 m4,F1=1000N,F2=2000N,a1=0.6m,a2=0.8m,M1=1000Nm,M2=2000Nm,b1=0.6m,b2=0.8m,q1=1000Nm,q2=2000Nm,c1=0.4m,c2=0.5m,d1=0.6m,d2=0.7m,x=0.4m;Mzmax=-2466.00NmVmax=0.000427m

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!