• 大小: 2KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-11
  • 语言: C/C++
  • 标签:

资源简介

班级通讯录管理系统 C语言课程设计 主要管理班级同学之间的通讯录

资源截图

代码片段和文件信息

# include 
# include 
# include 

typedef struct student //定义学生结点
{
    char name[20]; //姓名
int age; //年龄
char addr[20]; //地址
char phone[20]; //电话
char post[20]; //邮编
char mail[20]; //E-mail
struct student *next;
}stud;

void Menu() //菜单
{
printf(“\n\n\n“);
printf(“**************************************班级通讯录管理系统***************************************\n\n“);
printf(“          1.输入                                      2.编辑\n\n“);
printf(“          3.查询(按姓名)                            4.显示\n\n“);
printf(“          5.排序后显示并保存到文本中(按年龄)          6.从文本中读取数据并显示\n\n“);
printf(“          0.退出系统\n\n“);
printf(“************************************************************************************************\n“);

}

void Init(stud *H) //初始化
{
H->next=NULL;
}

void Input(stud *H) //输入
{
int n;
stud *p *q;
p=H;
while(p->next)
{
p=p->next; //p指向链表的最后一个结点
}
while(true)
{
q=(stud *)malloc(sizeof(stud)); //申请空间
q->next = NULL;
printf(“请输入学生信息:\n“);
printf(“姓名:“); scanf(“%s“ &q->name); printf(“\n“);
printf(“年龄:“); scanf(“%d“ &q->age); printf(“\n“);
printf(“地址:“); scanf(“%s“ &q->addr); printf(“\n“);
printf(“电话:“); scanf(“%s“ &q->phone); printf(“\n“);
printf(“邮编:“); scanf(“%s“ &q->post); printf(“\n“);
printf(“E-mail:“); scanf(“%s“ &q->mail); printf(“\n“);
p->next=q;
p=q;
system(“cls“); //清屏
    printf(“是否接着输入:1(继续)/0(结束)\n“);
scanf(“%d“ &n);
if(n==0) break;
}
}

void Output(stud *H) //显示输出
{
system(“cls“);
stud *p;
p = H->next;
if(!p) 
{
printf(“\n没有学生记录!\n“);
return ;
}
printf(“姓名     年龄    地址     电话    邮编    E-mail \n“);
while(p) //输出学生记录
{
printf(“%s     %d    %s     %s     %s     %s\n“ p->name p->age p->addr p->phone p->mail p->mail);
p=p->next;
}
}

void Find(stud *H) //查询
{
system(“cls“);
char str[20];
bool f=false;
stud *p;
p=H->next;
printf(“请输入姓名:\n“);
scanf(“%s“ str);
if(!p)
{
printf(“没有符合条件的学生记录!\n“);
return ;
}
printf(“姓名     年龄    地址     电话    邮编    E-mail \n“);
while(p)
{
if(strcmp(str p->name)==0) //找到了一条符合条件的记录
{
f=true;
printf(“%s     %d    %s     %s     %s     %s\n“ 
    p->name p->age p->addr p->phone p->mail p->mail);
}
p=p->next;
}
if(!f)
{
        printf(“没有符合条件的学生记录!\n“);
}

}

void Sort(stud *H) //按年龄排序后显示,并保存到文本中
{
system(“cls“);
stud a[1000];
stud *p *q;
p=H->next;
if(!p)
{
printf(“没有学生记录,不能排序!\n“);
return ;
}
int num=0 i j;
while(p)
{
a[num++] = *p;
p=p->next;
}
for(i=0;i {
int k=i;
for(j=i+1; j {
if(a[j].age {
k=j;
}
}
if(k!=i)
{
stud temp=a[k];
a[k]=a[i];
a[i]=temp;
}
}
    H->next=NULL;
p=H;
for(i=0;i {
q=(stud *)malloc(sizeof(stud));
*q = a[i];
p->next=q;
q->next=NULL;
p=q;
}
printf(“按年龄排序后:\n“);
Output(H);
FILE *fp; 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       7310  2010-06-08 20:54  班级通讯录管理系统+C语言课程设计.cpp

----------- ---------  ---------- -----  ----

                 7310                    1


评论

共有 条评论

相关资源