8.21作业:使用fsanf和fprintf实现对user.txt文件写入和读取信息。

mymain.c

#include"log.h"
int main(int argc, const char *argv[])
{
    int ch;
    printf("1.注册\n");
    printf("2.登录\n");
    printf("3.退出\n");
    scanf("%d",&ch);
    getchar();
    switch(ch)
    {
    case 1:regist();break;
    case 2:login();break;
    case 3:exit(EXIT_SUCCESS);break;
    }
    return 0;
}
log.c

#include"log.h"
int regist()
{
    nb log;
    printf("ender make document: ");

    fgets(log.name,sizeof(log.name),stdin);
    printf("ender make code: ");
    fgets(log.code,sizeof(log.code),stdin);
    FILE *fp=fopen("./user.txt","w");
    if(fp==NULL)
    {
        printf("fopen");
        return -1;
    }
    fprintf(fp,"%s%s",log.name,log.code);
    printf("make success\n");

    fclose(fp);
    return 0;
}
reg.c

#include"log.h"
int login()
{
    nb qw,as;
    printf("ender document: ");
    fgets(qw.name,sizeof(qw.name),stdin);
    printf("ender code: ");
    fgets(qw.code,sizeof(qw.code),stdin);
    qw.name[strlen(qw.name)-1]='\0';
    qw.code[strlen(qw.code)-1]='\0';
    FILE *fp=fopen("./user.txt","r");
    if(fp==NULL)
    {
        printf("fopen");
        return -1;
    }
    fscanf(fp,"%s%s",as.name,as.code);
    printf("%s%s",as.name,as.code);
    if(strcmp(qw.name,as.name)==0&&
            strcmp(qw.code,as.code)==0)
    {
        printf("yes\n");
    }
    else
    {
        printf("no\n");
    }
}
log.h

#ifndef _LOG_H_
#define _LOG_H_
#include <head.h>
typedef struct
{
    char name[20];
    char code[20];
}nb;
int regist();
int login();
#endif
 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值