readfile.c

来自「大一时课程设计 通信录管理系统 可作为C课程设计的参考」· C语言 代码 · 共 42 行

C
42
字号
#include"yy.h"

NODE *readfile(void)
{
    FILE *fp;
    NODE *p,*q,*head;
    char filename[20];
    char c;

    printf("\tWarning!Read file will loose the old adress book.\n");
    printf("\tcontinute?(y/n)\n\t");
    c=getch();
    if(c=='n'||c=='N')return head;

    clrscr();
    printf("\n\n\n\tPlease input the file name that you want to read:\n");
    printf("\t(press enter and use 'file1')\n\t");
    gets(filename);
    if(strlen(filename)==0)strcpy(filename,"file1");
    if((fp=fopen(filename,"rb"))==NULL)
        {printf("\tcan not open the file!\nplease choose again\n");
         return head;
         }
    free_nodes(head);
    printf("\n\t read file...\n");
    p=(NODE *)malloc(LEN);
    q=head=p;
    while(!feof(fp))
    {
        if(1!=fread(p,LEN,1,fp))break;
        n++;
        p->next=(NODE *)malloc(LEN);
        q=p;
        p=p->next;

    }
    q->next=NULL;
    fclose(fp);
    printf("\tThere are %d records which have been read.\n\t",n);
    return head;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?