bool CNPC_Hydra::ContractFromHead( ) { if (m_body.Count() <= 2) { return false; } int iNode = m_body.Count() - 1; if (m_body[iNode].bStuck && m_body[iNode-1].flActualLength > m_idealSegmentLength * 2.0) { AddNodeBefore( iNode ); iNode = m_body.Count() - 1; } if (m_body.Count() <= 3) { return false; } // always legal since no new link is being formed m_body.Remove( iNode ); CalcRelaxedLength( ); return true; }
bool CNPC_Hydra::AddNodeAfter( int iNode ) { AddNodeBefore( iNode + 1 ); return false; }
int main() { int n = -1; int flag = 0; int flag1; int save; struct Node * head; char fileName[20] = "0"; flag = SignIn(); //登陆 if(flag == 1) { head = InitLink(); //初始化 } for(;;) //各种功能 一直循环 { fflush(stdin); flag = 1; ReturnDesk(); system("clear"); ShowDesk(); fflush(stdin); scanf("%d", &n); fflush(stdin); if(n == 0) { system("clear"); FreeAllNodes(head); printf("\n\n\n\n\n\n 谢谢使用, ----made by Mr.Du 丶Lun\n\n\n\n\n\n"); getch(); exit(0); }//if if(n == 1) { system("clear"); Print(head); }//if if(n == 4) { system("clear"); head = Sort(head); printf("sort over,new info:\n\n\n"); Print(head); } if(n == 5) { system("clear"); Print(head); Insert(head); system("clear"); printf("insert over\n"); Print(head); } if(n == 6) { system("clear"); Print(head); Remove(&head); system("clear"); printf("remove over new info:\n"); Print(head); } if(n == 8) { system("clear"); Print(head); head =AddNodeBefore(head); } if(n == 9) { system("clear"); Print(head); AddNodeAfter(head); } if(n == 10) { system("clear"); printf("倒序排列为:\n"); head = Reverse(head); Print(head); } if(n == 11) { system("clear"); if(flag1 == -1) { Save_now_info(head, fileName); save = 1; } else { //printf("%d", flag); save = Save_info(head); } if(save == 1) printf("保存成功"); } if(n == 12) { system("clear"); head = Read_info(fileName); flag1 = -1; printf("\n"); Print(head); } if(n == 2) { system("clear"); Print(head); continueCreat(head); } if(n == 13) { system("clear"); ChangePasswd(); } if(n == 3) { system("clear"); flag1 = 1; head = creatNewList(); } if(n == 7) { system("clear"); ChangeScore(head); } }//死循环 getch(); }//main