课程设计帮帮忙~!
编写一个程序输入若干人的姓名和电话号码(8位),以字符‘#’结束输入。然后输入姓名,查找该人的电话号码。
谢谢大家~!帮帮忙吧~!
学得不好,希望大家帮帮忙,我会努力学习的~!
/******************************************************************************* 编写一个程序输入若干人的姓名和电话号码(8位),以字符‘#’结束输入。 然后输入姓名,查找该人的电话号码。 *******************************************************************************/ #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<string.h> struct line { char name[41];/* 姓名,40个字节 */ char tel[9]; /* 电话号码,8+休止符=9字节 */ struct line *next; }*p,*pr,*head; void INPUT() { int i=0; char c; printf("1,任意键输入数据;\n2,‘#’退出.\n请选择:\n"); c=getch(); if(c=='#') exit(0); while(9) { p=(struct line*)malloc(sizeof(struct line)); if(p==NULL) exit(0); printf("任意键继续输入,‘#’键结束:\n"); c=getch(); if(c=='#') break; printf("请输入第%d人姓名(本系统不支持汉字输入)'#' 结束输入:\n",i+1); scanf("%s",&p->name); printf("请输入8位电话号码:\n"); scanf("%s",&p->tel); if(i==0) { head=p;pr=p; } else { pr->next=p; pr=p; } i++; } p->next=NULL; } void serch(char a[]) { p=head; while(strcmp(a,p->name)!=0&&p->next!=NULL) { pr=p; p=p->next; } if(p->next==NULL) printf("没有您要查找的用户.\n"); if(strcmp(a,p->name)==0) printf("%s,%10s\n",p->name,p->tel); getch(); } int main(void) { char name[41]; char c; INPUT(); while(9) { system("cls"); printf("要查找用户,请按任意键,'#'键退出:\n"); c=getch(); if(c=='#') break; printf("请输入要查找的姓名:\n"); scanf("%s",&name); serch(name); } p=head; while(p->next!=NULL) free(p); }