資源簡介
這個是我們大二時數據結構的假期大作業,C語言開發,tree結構
壓縮包內容:源代碼+程序設計說明書+可執行文件+配置文件
CSDN博客:http://blog.csdn.net/ye_shizhe

代碼片段和文件信息
#include?“function.h“
Status?CheckPrmtr(String?OrderStringint?num_prmtr){//檢查參數個數是否足夠
int?check?=0;
P_Char?cur?=OrderString.head;
while(cur->next){
if(cur->data?==‘?‘)?check++;
cur?=?cur->next;
}
if(check? printf(“缺少必要參數!\n“);
return?ERROR;
}
else?return?OK;
}
int?Imprted(P_member?Root){//檢查是否有家族樹
if(!Root?||?!Root->name.length){
printf(“尚未導入家族樹!\n“);
return?0;
}
else?return?1;
}
int?main(){
P_member?Root?=NULL;
P_String?set?=?InitSet();//根據set.ini文件初始化命令查找表
String get_orderorder_type;
InitString(&get_order);
InitString(&order_type);
while(1){
ReInitString(&get_order);
ReInitString(&order_type);
P_Char?cur?=?get_order.head;
printf(“CMD$:“);
ScanString(&get_order);
if(get_order.length?==?0)?continue;
SplitString(&order_type&cur‘?‘);
switch(Explaint(setorder_type)){
case?clr:{
system(“cls“);
break;
}
case?quit:goto?EXIT;
case?statistic:{
if(!Imprted(Root))?break;
int?i_info[4];
for(int?i?=0;i?<4;i++)?i_info[i]?=0;
P_String?S_prfssn?=NULL;
Statistic(i_info&S_prfssn*Root);
float?average?=(float)i_info[3]/(float)i_info[2];//printf(“[3]:%d?[2]:%d\n“i_info[3]i_info[2]);
printf(“男性:%d人?女性:%d人?已故成員平均享年:%.1f\n“
i_info[0]i_info[1]average);
printf(“職業分布情況:\n“);
P_String?cur?=S_prfssn;
while(cur){
PrintString(*cur);
P_Char?c_cur?=?cur->head;
while(c_cur->data?!=?‘$‘)?c_cur?=c_cur->next;
c_cur?=?c_cur->next;
printf(“:?%d人\n“(int)c_cur->data);
cur?=cur->next;
}
cur?=S_prfssn;
while(cur){
P_String?pre?=cur;
cur?=cur->next;
DestroyString(pre);
}
break;
}//case?statistic
case?all:{
if(!Imprted(Root))?break;
PrintInfo(*Root0);
break;
}//case?all
case?tree:{
if(!Imprted(Root))?break;
Stack?S;
InitStack(&S);
PrintTree(*RootOTHERS&S);
DestroyStack(&S);
break;
}//case?tree
case?info:{
if(!Imprted(Root))?break;
if(CheckPrmtr(get_order1)?==ERROR)break;
RsltList?RL;
InitRsltList(&RLNAME);
Member?KeyWord;
InitTreeNode(&KeyWord);
SplitString(&KeyWord.name&cur‘?‘);
int?counter?=0;
if(Search(RootNAMEKeyWord&RL&counter)?==ERROR){
printf(“查找無果!\n“);
break;
}
P_member?M?=RL.head->data;
if(PrintString(M->name)?==ERROR)?printf(“無“);
printf(“\n“);
if(M->sex?==?1)?printf(“男?“);
else?printf(“女?“);
printf(“配偶:“);
if(PrintString(M->parter)?==ERROR)?printf(“無“);
printf(“\n“);
printf(“%d.%d.%d“M->birthdate.year
?M->birthdate.month
?M->birthdate.day);
printf(“~“);
printf(“%d.%d.%d“M->datedeath.year
?M->datedeath.month
?M->datedeath.day);
printf(“\n“);
printf(“職業:“);
PrintString(M->profession);
printf(“\n“);
DestroyString(&KeyWord.name);
DestroyRsltList(&RL);
break;
}
case?addkid:{
if(!Imprted(Root))?break;
if(CheckPr
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????657??2012-02-19?13:42??族譜管理系統\Input.txt
?????文件????????146??2012-03-04?15:10??族譜管理系統\Readme.txt
?????文件????????938??2012-02-19?12:59??族譜管理系統\set.ini
?????文件????????347??2012-02-19?13:49??族譜管理系統\t1
?????文件?????229473??2012-02-19?16:05??族譜管理系統\族譜管理系統.exe
?????文件???????1482??2012-01-31?14:36??族譜管理系統\源代碼\Define2.h
?????文件??????20010??2012-02-19?18:58??族譜管理系統\源代碼\function.h
?????文件?????232960??2012-03-04?16:31??族譜管理系統\源代碼\數據結構大作業設計說明書.doc
?????文件??????10689??2012-02-19?15:59??族譜管理系統\源代碼\族譜管理系統.cpp
?????目錄??????????0??2012-05-29?19:58??族譜管理系統\源代碼
?????目錄??????????0??2012-03-04?16:26??族譜管理系統
-----------?---------??----------?-----??----
???????????????496702????????????????????11
評論
共有 條評論