材料力学编程 下载本文

内容发布更新时间 : 2024/12/22 16:16:31星期一 下面是文章的全部内容请认真阅读。

材料力学上机作业 第一题

一个力作用下的任意截面的弯矩,挠度 源程序为:

#include #include main() {

double Fi,ai,bi,l,E,I,x,M,v;

printf(\请输入: Fi,ai,bi,E,I,x:\\n\

scanf(\ l=ai+bi;

if((x>=0) && (x<=ai)) {

M=Fi*bi*x/l;

v=-Fi*bi*x*(l*l-x*x-bi*bi)/(6*E*I*l); printf(\ }

if((x>ai) && (x<=l)) {

M=Fi*ai*(l-x)/l;

v=-Fi*bi*(l*(x-ai)*(x-ai)*(x-ai)/bi+(l*l-bi*bi)*x-x*x*x)/(6*E*I*l); printf(\计算结果为:M=%lf,v=%lf\\n\ }

if((x<0) || (x>l)) {

printf(\有错误!\\n\ } }

4

Fi=300N,ai=60m,bi=200m,E=200000000000Pa,I=0.0001m,x=80m,程序运行结果为: v

材料力学上机作业 第二题

1一个力偶作用下的任意截面的弯矩,挠度 #include #include main() {

double Mk,ak,bk,l,E,I,x,M,v;

printf(\请输入 Mk,ak,bk,E,I,x:\\n\

scanf(\ l=ak+bk;

if((x>=0) && (x<=ak)) {

M=-Mk*x/l;

v=Mk*x*(l*l-3*bk*bk-x*x)/(6*E*I*l); printf(\ }

if((x>ak) && (x<=l)) {

M=Mk*(1-x/l);

v=-Mk*(-x*x*x+3*l*(x-ak)*(x-ak)+(l*l-3*bk*bk)*x)/(6*E*I*l); printf(\ }

if((x<0) || (x>l)) {

printf(\错误!\\n\

} }

4

令Mk=200N·m,ak=100m,bk=100m,E=200000000000Pa,I=0.0001m,x=100m,程序运行结果为:

2一段分布力作用下的任意截面的弯矩,挠度 源程序为:

#include #include main() {

double q,ai,bi,ci,l,E,I,x,M,v; double Fa,Fb,c1,c2,c3,d3;

printf(\请输入: q,ai,bi,ci,E,I,x:\\n\

scanf(\ l=ai+bi+ci;

Fa=(q*ci*(ci+2*bi))/(2*l); Fb=(q*ci*(ci+2*ai))/(2*l);

c3=(Fa*pow((ai+ci),3))/(3*l)-(q*ai*pow(ci,3))/(6*l)-(q*pow(ci,4))/(8*l)+(Fb*pow(bi,2))/2-(Fb*pow(bi,3))/(3*l);

c2=c3-(Fb*pow(bi,2))/2-(Fa*pow((ai+ci),2))/2+(q*pow(ci,3))/6; c1=c2; d3=-c3*l;

if((x>=0) && (x<=ai)) {

M=Fa*x;

v=((Fa*pow(x,3))/6+c1*x)/(E*I);