数据结构实例应用(9)

2019-08-31 16:01

else

{m=q;q = q->ptr.hp;} }

p = p->ptr.hp; } }

if(!flag)printf(\查无此人!\\n\ printf(\ return head; }

void Inquire(GList *head)/*查询信息*/ {

char slen[100]; GList *p,*q,*a,*m; int flag = FALSE; p = head;

printf(\请输入待查人员信息,如:李刚\\n\ scanf(\ while(p != NULL) {

q = p->ptr.tp;

if(!strcmp(p->name,slen))

{flag = TRUE;printf(\本人信息:姓名:%s 职称:%s 类型:导师\\n\

if(q->type == 2)/* 该导师直接带本科生 */ {

a = q;

while(a != NULL) {

if(!strcmp(a->name,slen)) {

printf(\本人信息:姓名:%s 班级:%s 类型:本科生\\n\

printf(\导师信息:姓名:%s 职称:%s\\n\ flag = TRUE; }

m = a;

a = a->ptr.hp; } } else {

while(q != NULL)

{

m = q;

a = q->ptr.tp;

if(!strcmp(q->name,slen)) {

printf(\本人信息:姓名:%s 班级:%s 类型:研究生\\n\

printf(\导师信息:姓名:%s 职称:%s\\n\ flag = TRUE; }

while(a != NULL) {

if(!strcmp(a->name,slen)) {

printf(\本人信息:姓名:%s 班级:%s 类型:本科生\\n\

printf(\导师信息:姓名:%s 职称:%s\\n\ printf(\研究生信息:姓名:%s 班级:%s\\n\ flag = 1; }

m = a;

a = a->ptr.hp; }

q = q->ptr.hp; } }

p = p->ptr.hp; }

if(!flag) printf(\查无此人!\\n\ printf(\}

void StudentCount(GList *head)/*统计导师的研究生、本科生人数*/ {

char teacher[100]; GList *p,*q,*a;

int Gra = 0,Ugra = 0; p = head;

printf(\请输入老师姓名:\\n\ scanf(\

while(strcmp(p->name,teacher)) {

p = p->ptr.hp;

if(p == NULL) break;

}

if(p == NULL) printf(\不存在该导师!\\n\ else {

q = p->ptr.tp;

while(q != NULL) {

Gra++;

a = q->ptr.tp;

while(a != NULL) {

Ugra++;

a = a->ptr.hp; }

q = q->ptr.hp; }

if(p->ptr.tp->type==1)

{printf(\研究生人数: %d\\n\ printf(\本科生人数: %d\\n\ else

printf(\本科生人数: %d\\n\ }

printf(\}

/*菜单函数*/ void Menu() {

printf(\ printf(\建立广义表\ printf(\插入学生\ printf(\删除学生\ printf(\查询信息\

printf(\统计导师的研究生、本科生人数\ printf(\输出广义表\ printf(\退出\

printf(\}

int main(int argc,char* argv[]) {

GList *Head; char str[100]; int choice; while(TRUE)

{

Menu();

scanf(\ switch(choice) {

case 1:

printf(\请输入您想建立的标准广义表,例如:((高老师-教授-0,(李平-一班-2,杨梅-二班-2)),(李平-博士-0,(李平-三班-1,(李平-四班-2))))\\n\ scanf(\

Head = GListCreate(str); break;

case 2: Head = StudentInsert(Head);break; case 3: Head = StudentDelete(Head);break; case 4: Inquire(Head);break;

case 5: StudentCount(Head);break; case 6: GListPrint(Head);break; case 7: return 0; } }

return 0; }


数据结构实例应用(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:电站综合自动化系统安装调试手册

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: