c语言中函数没被调用
void modify(STU *head)
{ FILE *fp;
STU *p,*q;
int num1,age,num;
charname[20],gender[4],jiguan[10],xibie[20],zhuanye[20],banji[20],qk[20];
char str[10];
if(head==NULL)
{ printf("没有可供查询的记录!\n");
return;
}
else
{ if((fp=fopen("d:\\hehe.txt","w"))==NULL) //用写的方式打开D盘根目录文件hehe.txt(绝对引用) { printf("无法打开文件,请检查\n"); //判断是否正确打开该文件
return ;
}
p=head->next;
while(head!=0)
{ printf("请输入要修改的学生信息的学号:\n"); scanf("%d",&num1);
if(num1==head->num) { printf("学号 姓名 性别 年龄 籍贯 系别 专业 班级 学籍情况\n");
printf("%d %s %s %d %s %s %s %s %s",p->num,p->name,p->gender,p->age,p->jiguan,p->xibie,p->zhuanye,p->banji,p->qk);
printf("你确定要修改它吗?(Y/N)\n");
gets(str);
if(str[0]=='y'||str[0]=='Y')
{ printf("下面请重新输入该学生的信息:\n"); printf("请输入第%d个学生的学号、姓名、性别、年龄、籍贯、系别、专业、班级、学籍情况。学号为0表示结束输入\n",sum);
scanf("%d %s %s %d %s %s %s %s %s",&num,name,gender,&age,jiguan,xibie,zhuanye,banji,qk); //给出提示语句后,输入第一个学生的数据
while(num!=0) //输入的学号不为0,就继续新增节点
{ q=(STU *)malloc(sizeof(STU));
q->num=num;
q->age=age;
strcpy(q->name,name);
p->next=q; //将新节点连到当前的尾节点后(p指向链表当前尾节点)
p=q; //p指向新的尾节点 strcpy(q->gender,gender);
p->next=q; //将新节点连到当前的尾节点后(p指向链表当前尾节点)
p=q;
strcpy(q->jiguan,jiguan);
p->next=q; //将新节点连到当前的尾节点后(p指向链表当前尾节点)
p=q;
strcpy(q->xibie,xibie);
p->next=q; //将新节点连到当前的尾节点后(p指向链表当前尾节点)
p=q;
strcpy(q->zhuanye,zhuanye);
p->next=q; //将新节点连到当前的尾节点后(p指向链表当前尾节点)
p=q;
strcpy(q->banji,banji);
p->next=q; //将新节点连到当前的尾节点后(p指向链表当前尾节点)
p=q;
strcpy(q->qk,qk);
p->next=q; //将新节点连到当前的尾节点后(p指向链表当前尾节点)
p=q;
}
}
return ;
}
else
{ printf("查无此人!\n"); return ;
}
printf("数据修改完毕!\n");
return ;}
}
}