• 大小: 5KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-23
  • 语言: C/C++
  • 标签: C语言  

资源简介

采用C语言编写的可以求解空间桁架内力及各结点位移的源程序代码

资源截图

代码片段和文件信息


#include “stdio.h“
#include “math.h“
main()
{
 int unit[6][4] bind[3][4] number[5] ijknmrsvwkk;
 float xixjyiyjEALEALzizjLxMxNx;
 float point[4][3]material[1][2]P[1][4]unitarray[3][3]allarray[12][12]allar[12][12];
 FILE *fp*wp; 
 if((fp=fopen(“gao.txt““r“))==NULL)
 {printf(“data file can‘t be openedplease create it“);
 exit(0);return;}
 if((wp=fopen(“out.txt““a“))==NULL)
 {printf(“data file can‘t be openedplease create it“);
 exit(0);return;}
 for(i=0;i<=4;i++)
 if(fscanf(fp“%d“&number[i])==EOF)
 {printf(“file error“);fclose(fp);}
 fprintf(wp“%d %d %d %d %d\n“number[0]number[1]number[2]number[3]number[4]);

for(i=0;i<4;i++)
fscanf(fp“%d %f %f %f \n“&k&point[i][0]&point[i][1]&point[i][2]);

for(i=0;i<4;i++)
fprintf(wp“%8d %8.2f %8.2f %8.2f \n“i+1point[i][0]point[i][1]point[i][2]);

for(i=0;i<6;i++)
if(fscanf(fp“%d %d %d %d\n“&unit[i][0]&unit[i][1]&unit[i][2]&unit[i][3])==EOF)

{printf(“file error\n“);fclose(fp);}
for(i=0;i<6;i++)
fprintf(wp“%5d  %5d  %5d  %5d\n“unit[i][0]unit[i][1]unit[i][2]unit[i][3]);

for(i=0;i<1;i++)
if(fscanf(fp“%d %f %f\n“&k&material[i][0]&material[i][1])==EOF)
{printf(“file error\n“);fclose(fp);}

for(i=0;i<1;i++)
fprintf(wp“%5d  %15.2f  %15.8f\n“i+1material[i][0]material[i][1]);

for(i=0;i<1;i++)
fscanf(fp“%d %f %f %f %f \n“&k&P[i][0]&P[i][1]&P[i][2]&P[i][3]);

for(i=0;i<1;i++)
fprintf(wp“%5d %f %f %f %f \n“i+1P[i][0]P[i][1]P[i][2]P[i][3]);

 for(i=0;i<3;i++)
if(fscanf(fp“%d %d %d %d %d\n“&k&bind[i][0]&bind[i][1]&bind[i][2]&bind[i][3])==EOF)
{printf(“file error\n“);fclose(fp);}

for(i=0;i<3;i++)
fprintf(wp“%5d %5d %5d %5d %5d\n“i+1bind[i][0]bind[i][1]bind[i][2]bind[i][3]);

for(v=0;v<3*number[0];v++)
  for(w=0;w<3*number[0];w++)
     allarray[v][w]=0.0;
kk=0;
for(kk=0;kk{
i=unit[kk][1];j=unit[kk][2];
xi=point[i-1][0];yi=point[i-1][1];zi=point[i-1][2];
xj=point[j-1][0];yj=point[j-1][1];zj=point[j-1][2];

L=sqrt((xj-xi)*(xj-xi)+(yj-yi)*(yj-yi)+(zj-zi)*(zj-zi));

E=material[unit[kk][3]-1][0];
A=material[unit[kk][3]-1][1];
EAL=E*A/L ;
Lx=(xj-xi)/L;Mx=(yj-yi)/L;Nx=(zj-zi)/L;

printf(“the unit=%d\n“unit[kk][0]);
printf(“i=%d j=%d \n“ij);
printf(“xi=%f yi=%f zi=%f\n xj=%f yj=%f zj=%f\n“xiyizixjyjzj);
printf(“E=%f A=%f L=%f EAL=%f\n“EALEAL);
printf(“Lx=%f Mx=%f Nx=%f\n “LxMxNx);

fprintf(wp“unitarray=%d\n“unit[kk][0]);
fprintf(wp“i=%d j=%d \n“ij);
fprintf(wp“xi=%f yi=%f zi=%f \n xj=%f yj=%f zj=%f\n“xiyizixjyjzj);
fprintf(wp“E=%f A=%f L=%f EAL=%f\n\n“EALEAL);

  unitarray[0][0]=EAL*Lx*Lx;
  unitarray[0][1]=EAL*Lx*Mx;
  unitarray[0][2]=EAL*Lx*Nx;
  unitarray[1][0]=EAL*Lx*Mx;
  unitarray[1][1]=EAL*Mx*Mx;
  unitarray[1][2]=EAL*Mx*Nx;
  unitarray[2][0]=EAL*Lx*Nx;
  unitarray[2][1]=EAL*Mx*Nx;
  unitarray[2][2]=EAL*Nx*Nx;

 for(v=0;v<3;v++)
 {for(w=0;w<3;w++)
   fprintf(wp“%9.2g“unitarray[v][w]);
  fo

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        368  2007-12-25 17:53  空间桁架计算程序\自编桁架\gaojiawei data.txt

     文件      43680  2007-12-25 17:54  空间桁架计算程序\自编桁架\gaojiawei out.TXT

     文件        161  2007-12-19 18:53  空间桁架计算程序\自编程序\gao.txt

     文件       7096  2007-12-19 18:52  空间桁架计算程序\自编程序\OUT.TXT

     文件       6840  2007-12-25 18:21  空间桁架计算程序\自编程序\程序.c

     目录          0  2009-04-25 18:43  空间桁架计算程序\自编桁架

     目录          0  2009-04-25 18:43  空间桁架计算程序\自编程序

     目录          0  2009-04-25 18:43  空间桁架计算程序

----------- ---------  ---------- -----  ----

                58145                    8


评论

共有 条评论