1 / 22
文档名称:

哈工大材料力学上机作业.docx

格式:docx   大小:639KB   页数:22页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

哈工大材料力学上机作业.docx

上传人:63229029 2017/10/15 文件大小:639 KB

下载得到文件列表

哈工大材料力学上机作业.docx

文档介绍

文档介绍:哈尔滨工业大学
材料力学计算机作业
姓名:XX
班级:XXXXXXX
学号:XXXXXXXXXX
材料力学计算机作业
1 .一个力作用下的任意截面的弯矩,挠度。
ai
bi
l
Fi
#include <>
#include<>
void main()
{
double M,l,a,x,v,E,I,F;
char ch;
ST1:printf("请输入长度l(单位:m):");
scanf("%lf",&l);
printf("请输入长度a(单位:m):");
scanf("%lf",&a);
printf("请输入弹性模量E(单位:GPa):");
scanf("%lf",&E);
printf("请输入极惯性矩I(单位:m^4):");
scanf("%lf",&I);
printf("请输入力F(单位:KN):");
scanf("%lf",&F);
ST2:printf("请输入x(单位:m):");
scanf("%lf",&x);
if(x>=0&&x<=a)
{
M=F*(l-a)*x/l;
v=(-F*(l-a)*x*(l*l-x*x-pow(l-a,2))/(6*E*I*l))*1e-3;
printf("Mz=%f KN*m\n",M);
printf("v=%f mm\n",v);
}
else if(x>a&&x<=l)
{
M=F*a*(l-x)/l;
v=(-F*(l-a)*(l/(l-a)*pow(x-a,3)+(l*l-pow(l-a,2))*x-x*x*x)/(6*E*I*l))*1e-3;
printf("Mz=%f KN*m\n",M);
printf("v=%f mm\n",v);
}
else
{
printf("溢出\n");
}
printf("是否计算其他截面(y/n):");
scanf(" %c",&ch);
if(ch=='y') goto ST2;
printf("是否重新输入参数(y/n):");
scanf(" %c",&ch);
if(ch=='y') goto ST1;
}
运行界面:
2. 一个力偶作用下的任意截面的弯矩,挠度。
ak
bk
l
mkkkkkkkkkkkiiii
#include <>
#include<>
main()
{
double M,l,E,I,a,b,x,v,Mz;
char ch;
ST1:printf("请输入长度l(单位m):");
scanf("%lf",&l);
printf("请输入长度a(单位m):");
scanf("%lf",&a);
printf("请输入弹性模量E(单位GPa):");
scanf("%lf",&E);
printf("请输入极惯性矩I(单位m^4):");
scanf("%lf",&I);
printf("请输入弯矩M(单位Nm):");
scanf("%lf",&M);
ST2:printf("请输入x(单位m):");
scanf("%lf",&x);
b=l-a;
if(x>=0&&x<=a)
{
Mz=M*x/l;
v=(M*x*(l*l-3*b*b-x*x)/(6*E*I*l))*1e-6;
printf("Mz=%f Nm\n",Mz);
printf("v=%f mm\n",v);
}
else if(x>a&&x<=l)
{
Mz=M*(l-x)/l;
v=(M*(-x*x*x+3*l*(x-a)*(x-a)+(l*l-3*b*b)*x))*1e-6;
printf("Mz=%f Nm\n",Mz);
printf("v=%f mm\n",v);
}
else
{
printf("溢出\n");
}
printf("是否计算其他截面(y/n):");
scanf(" %c",&ch);
if(ch=='y') goto ST2;
printf("是否重新输入参数(y/n):");
scanf(" %c",&ch);
if(ch=='y') goto ST1;
}
运行界面:

aj
bj
l
cj
#include <>
#include <>
double qy(double x,doubl