求有空的大侠帮忙。是一段关于教师管理系统的C语言代码编写,有很多有关问题。恳求哪位大侠有空在线指导

求有空的大侠帮忙。是一段关于教师管理系统的C语言代码编写,有很多问题。恳求哪位大侠有空在线指导。
这是学校课程设计的作业。因为考试还有自己懒惰的原因,对于结构体和文件方面只是略懂,再加上是本人第一次写程序,所以很多东西都处理不好。更因为时间紧迫,可是编出来的程序还有好多自己不能解决的错误(尤其是文件的问题)。所以恳求哪位大侠有空把QQ留下,能下午或者晚上指导我解决问题……

------解决方案--------------------
看看这个吧,或许对你有用
C/C++ code
#include  <stdio.h>    
#include <stdlib.h> 
#include <string.h> 

struct address{ 
  char name[30]; 
  char street[40]; 
  char city[20]; 
  char state[3]; 
  char zip[11]; 

  struct address *next;            /*  pointer to next entry  */ 
  struct address *prior;            /*  pointer to previous record  */ 
}; 

struct address *start;              /*  pointer to first entry in list  */ 
struct address *last;              /*  pointer to last entry  */ 
struct address *find(char*); 

void enter(void),search(void),save(void); 
void load(void),list(void); 
void mldelete(struct address **,struct address **); 
void dls_store(struct address *i,struct address **start,struct address **last); 
void inputs(char *,char *,int); 
void display(struct address *); 
int menu_select (void); 

int main(void) 

  start = last = NULL;            /*  initialize start and end pointers  */ 

  for(;;){ 
    switch(menu_select()){ 
    case 1: enter ();            /*  enter an address  */ 
      break; 
    case 2: mldelete(&start,&last);      /*  remove an address  */ 
      break; 
    case 3: list();              /*  display the list  */ 
      break; 
    case 4: search();            /*  find an address  */ 
      break; 
    case 5: save();              /*  save list to disk  */ 
      break; 
    case 6: load();              /*  read from disk  */ 
      break; 
    case 7: exit(0); 
    } 
  } 
  return 0; 


/*  Select an operation.  */ 
int menu_select(void) 

  char s[80]; 
  int c; 

  printf("1.Entry a name \n"); 
  printf("2.Delete a name \n"); 
  printf("3.List the file \n"); 
  printf("4.Search \n"); 
  printf("5.Save the file \n"); 
  printf("6.Load the file \n"); 
  printf("7.Quit \n"); 
  do { 
    printf("\n Enter your choice:"); 
    gets(s); 
    c = atoi(s); 
  }while(c <0||c>7); 
  return c; 


/*  Enter names and address.  */ 
void enter(void)