通讯管理系统,大一课设,链表问题,查询时 不能完整输出要查询内容
#include<stdio.h>#include<stdlib.h>
#include "conio.h"
typedef struct student
{
char sname[15];
char ssex[20];
long ntell;
char sadress[20];
struct student *pnext;
}stu;
stu *phead=NULL;
stu *input()
{
while(1)
{
char chose;
stu *pnew,*p2=phead ; //当前节点
pnew=(stu *)malloc(sizeof(stu));
pnew->pnext=NULL;
if(pnew==NULL)
{
printf("内存分配失败!\n");
exit(1);
}
printf("请输入信息: 姓名 性别 电话 地址\n");
scanf("%s %s %ld %s",pnew->sname,pnew->ssex,&pnew->ntell,pnew->sadress);
p2->pnext=pnew;
p2=p2->pnext;
printf("输入成功,退出请按Y,按任意键继续输入\n");
chose=getche();
if(chose=='Y'||chose=='y')
break;
}
return phead;
}
void print(stu *pp)
{
pp=pp->pnext;
while(pp!=NULL)
{
printf("姓名%s 性别%s 电话%ld 地址%s",pp->sname,pp->ssex,pp->ntell,pp->sadress);
pp=pp->pnext;
}
printf("\n按任意键继续!");
getche();
}
int main()
{ int a;
phead=(stu *)malloc(sizeof(stu));
phead->pnext=NULL;
while(1)
{
printf("====================欢迎来到菠菜叶通讯录管理系统v1.0========================\n");
printf(" ================功能选择=================\n");
printf("\t\t1.电话信息录入\n");
printf("\t\t2.电话信息查询\n");
printf("\t\t3.电话信息删除\n");
printf("\t\t4.电话信息修改\n");
printf("\t\t0.退出系统\n");
scanf("%d",&a);
switch(a)
{
case 1 :input();//录入信息
break;
case 2: print(phead);//查询信息
break;
case 3:
break;
case 4:
break;
case 0:
break;
}
}
return 0;
}