软件特性
这是关于钢结构细部的设计程序,它包含:截面特性、简支梁、拼接节点 、锚栓、单跨梁、组合梁、钢管混凝土柱等内容。主要针对钢结构设计人员设计计算一些结构细部构件、节点等,同时为计算提供工程记录、打印计算书等内容。对提高设计速度、结构快速设计有很大的帮助作用。 另外,对于工程的概预算也有很大的参考和帮助作用。 新增计算书预览、页面布置等等。
简支梁模块:最适合于楼板次梁的计算。当然简支构件同样可以使用,但在控制侧向稳定时需另行考虑。根据梁的受荷情况及基本参数,验算构件的截面,并可以验算连接节点强度,导出计算书,保存工程记录。对设计人员很大的帮助作用。
构件的截面形式由以前单一的H型钢扩展到包含矩形管、槽钢、工字钢等形式,可以多些选择。这也是几种比较常用的形式,如采用其他形式(如圆管、组合构件等)可以选择“自定义”型。
截面特性模块:是钢结构设计和钢结构预算中使用频率最高的模块之一。它可以很方便地用于计算截面的特性。给设计和预算做有力的参考。目前可以计算的截面:H型钢、C型钢、Z型钢、工字钢、槽钢、角钢、圆钢和圆管、矩形管。
节点设计模块:主要用于轻钢梁柱、梁梁(柱柱)连接节点计算。主要验算的内容:螺栓的抗拔能力、抗滑移、端板厚度、节点域板剪应力、腹板抗拉强度等。
单跨梁设计模块:用于单跨梁的设计计算,梁端的支承形式可以为简支、固定、悬挑,单跨梁截面为常用形式:H型钢、工字钢、槽钢、矩形管等。荷载作用形式:集中力、均布力。根据以上条件,大约可以用于计算50多种单跨梁情形。
新增钢柱设计模块新增自动检测更新版本功能
detail软件没有手机版。Detail软件是建筑行业常用到的钢结构设计程序,能够针对于各个结构进行一定的分析和 *** 作,能够帮助用户进行图纸的设计与制作,大大提高工作的效率。
//以下是参考代码有相似结构,数据结构自己设计一下。//如果没参考价值,手下留情,别点不采纳。
#define MAXPARKINGPOS 100
#define MAXPRICETYPE 3
#define MAXLINE 4096
struct detail
{
char num[MAXLINE]
char name[MAXLINE]
double pricePerHour
time_t start
time_t end
double period
double cost
}
static int currentParkingNum = 0
static struct detail detailBuf[MAXPARKINGPOS]
static double priceBuf[MAXPRICETYPE] = {11.0,22.0,33.0}
int main(void) {
char buf[MAXLINE]
struct detail *myParking
int iChoice,leavingIndex,i,numEexisted
struct tm *begin,*end
while(true) {
selectService:
printf("Service type,what is your choice?\n1.park\n2.leave\n3.exit\n")
gets(buf)
if(strcmp(buf,"3") == 0) {
return 0
}
if(strcmp(buf,"1") == 0) {
//park
if(currentParkingNum == MAXPARKINGPOS) {
printf("Sorry,not empty!\n\n")
continue
}
myParking = detailBuf+currentParkingNum
printf("your name:\n")
gets(myParking->name)
printf("your parking num:\n")
gets(myParking->num)
numEexisted = 0
for(i=0i<currentParkingNumi++) {
if(strcmp(detailBuf[i].num,myParking->num) == 0) {
numEexisted =1
break
}
}
if(numEexisted != 0) {
printf("The car %s is in\n\n",myParking->num)
goto selectService
}
selectPrice:
printf("Service cost,what is your choice?\n")
for(int i=0i < MAXPRICETYPE i++) {
printf("%d.$%.2f per hour\n",i+1,priceBuf[i])
}
gets(buf)
iChoice = atoi(buf)
if(!(iChoice >= 1 && iChoice <=MAXPRICETYPE)) {
printf("Your choice is incorrect!\n\n")
goto selectPrice
}
myParking->pricePerHour=priceBuf[iChoice-1]
time(&myParking->start)
currentParkingNum++
printf("Parcking ok!\n\n")
}else if(strcmp(buf,"2") == 0) {
//leave
printf("your parking num:\n")
gets(buf)
myParking = NULL
for(i=0i<currentParkingNumi++) {
if(strcmp(detailBuf[i].num,buf) == 0) {
myParking = &detailBuf[i]
leavingIndex = i
break
}
}
if(myParking ==NULL) {
printf("Cannot find your car!\n\n")
continue
}
myParking->end = time(&myParking->end)
myParking->period = difftime(myParking->end,myParking->start)
myParking->cost= myParking->period/3600.0*myParking->pricePerHour
printf("****** Cost Details ******\n")
printf("name:%s\n",myParking->name)
printf("number:%s\n",myParking->num)
printf("price:%.2f\n",myParking->pricePerHour)
begin = localtime(&myParking->start)
strftime(buf,sizeof(buf),"%Y-%m-%d %H:%M:%S",begin)
printf("begin:%s\n",buf)
end = localtime(&myParking->end)
strftime(buf,sizeof(buf),"%Y-%m-%d %H:%M:%S",end)
printf("end:%s\n",buf)
printf("period:%.2f hour(s)\n",myParking->period/3600.0)
printf("cost:$%.2f\n",myParking->cost)
printf("service:$%.2f per hour\n",myParking->pricePerHour)
for(i = leavingIndex i < currentParkingNumi++) {
if(i+1 < currentParkingNum) {
detailBuf[i]=detailBuf[i+1]
}
}
detailBuf[currentParkingNum-1].cost=0.0
detailBuf[currentParkingNum-1].end=0
detailBuf[currentParkingNum-1].name[0]='\0'
detailBuf[currentParkingNum-1].num[0]='\0'
detailBuf[currentParkingNum-1].period=0.0
detailBuf[currentParkingNum-1].pricePerHour=0.0
detailBuf[currentParkingNum-1].start=0
currentParkingNum--
printf("Leaving ok!\n\n")
}else{
printf("Your choice is incorrect!\n\n")
continue
}
}
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)