在一个程序中,如何看是怎样创建链表的?
c语言吧
全部回复
仅看楼主
level 1
下面这是程序代码,麻烦看得懂的大神指教一下
/*头文件*/
#include <stdio.h>
#include <conio.h>
#include<dos.h>
#include<stdlib.h> /*其它说明*/
#include<string.h> /*字符串函数*/
#include<mem.h> /*内存操作函数*/
#include<ctype.h> /*字符操作函数*/
#include<alloc.h> /*动态地址分配函数*/
#define LEN sizeof(CNO)
typedef struct cno /*定义结构体数组用于缓存数据*/
{char num[8];
char name[20];
char cname[10];
char time[12];
char teacher[20];
char add[12];
char score[5];
struct cno *next;
}CNO;
/*函数原型*/
CNO *init(); /*初始化函数 by 25175.com*/
int menu_select(); /*菜单函数*/
CNO *create(); /*创建链表*/
void print(CNO *head); /* 显示全部记录*/
void search_num(CNO *head);
void search_cname(CNO *head); /*查找记录*/
CNO *del(CNO *head); /*删除记录*/
//CNO *sort(STUDENT *head); /*排序*/
CNO *insert(CNO *head); /*插入记录*/
/*主函数界面*/
main()
{CNO *head;
head=init(); /*链表初始化,使head的值为NULL*/
for(;;) /*循环无限次*/
{switch(menu_select())
{
case 1:head=create();break;
case 2:print(head);break;
case 3:search_num(head);break;
case 4:search_cname(head);break;
case 5:head=del(head);break;
//case 5:head=sort(head);break;
case 6:head=insert(head);break; /*&new表示返回地址*/
//case 7:save(head);break;
// case 8:head=load(); break;
case 7:exit(0); /*如菜单返回值为9则程序结束*/
}
}
}
/*初始化函数*/
CNO *init()
{
return NULL; /*返回空指针*/
}
/*菜单选择函数*/
menu_select()
{int n;
struct date d; /*定义时间结构体*/
getdate(&d); /*读取系统日期并把它放到结构体d中*/
printf("press any key to enter the menu......"); /*按任一键进入主菜单*/
getch(); /*从键盘读取一个字符,但不显示于屏幕*/
system("cls"); /*清屏*/
printf("\n");
printf("********************************************************************************\n");
printf("\t\t Welcome to\n");
printf("\n\t\t The CNO score manage system\n");
printf("*************************************MENU***************************************\n");
printf("\t\t\t1. Enter the record\n"); /*输入学生成绩记录*/
printf("\t\t\t2. Print the record\n"); /*显示*/
printf("\t\t\t3. Search record on num\n");
printf("\t\t\t4. search record on cname\n"); /*寻找*/
printf("\t\t\t5. Delete a record\n");
/*删除*/
//printf("\t\t\t5. Sort to make new a file\n"); /*排序*/
printf("\t\t\t6. Insert record to list\n"); /*插入*/
//printf("\t\t\t7. Save the file\n"); /*保存*/
//printf("\t\t\t8. Load the file\n"); /*读取*/
printf("\t\t\t7. Quit\n"); /*退出*/

2013年01月08日 11点01分 1
1