day1-IO

/*******************************************统计文件行数和字数**********************************/

#include    
void hang(char *p)//统计行数
{
    FILE *fp;
    if((fp=fopen(p,"r"))==NULL)
    {
        perror("fopen error");
        return ;
    }
    char buf;
    int count =0;
    while((buf=fgetc(fp))!=EOF)
    {
        if(buf=='\n')
        {
            count++;
        }
    }
    fclose(fp);
    printf("文件有%d行\n",count);
}

void all(char *p)//统计字数
{
    FILE *fp;
    if((fp=fopen(p,"r"))==NULL)
    {
        perror("fopen error");
        return ;
    }
    char buf;
    int count =0;
    while((buf=fgetc(fp))!=EOF)
    {
            count++;
    }
    fclose(fp);
    printf("文件大小为%d\n",count);
}

int main(int argc,char *argv[])
{
    if(argc != 2)
    {
        printf("输入有误\n");
        return -1;
    }
    char *p = argv[1];
    all(p);
    hang(p);
    return 0;
}

 /*******************************************注册登陆功能***************************************/

#include

void regist()
{
    char zczh[128];
    char zcmm[128];
    printf("输入账号:");
    scanf("%s",zczh);
    printf("输入密码:");
    scanf("%s",zcmm);
    
    FILE *fp;
    if((fp=fopen("./password.txt","a"))==NULL)
    {
        perror("fopen error");
        return ;
    }
    //存入文件
    fprintf(fp,"%s %s\n",zczh,zcmm);
    fclose(fp);
    printf("注册成功\n");

}
void login()
{
    char dlzh[128];
    char dlmm[128];
    printf("账号:");
    scanf("%s",dlzh);
    while(getchar()!=10);
    printf("密码:");
    scanf("%s",dlmm);
    while(getchar()!=10);

    //进行匹配
    char username[128];
    char passwd[128];

    FILE *fp;
    if((fp=fopen("./password.txt","r"))==NULL)
    {
        perror("fopen error");
        return ;
    }

    //读取数据
    while(1)
    {
        fscanf(fp,"%s %s",username,passwd);
        if(strcmp(username,dlzh)!=0)
        {
            printf("没有该用户\n");
            return ;
        }
        else if(strcmp(username,dlzh)==0&&strcmp(passwd,dlmm)!=0)
        {
            printf("密码错误\n");
            return ;
        }
        else if(strcmp(username,dlzh)==0&&strcmp(passwd,dlmm)==0)
        {
            printf("登录成功\n");
            return ;
        }
    }
}

int main(int argc, const char *argv[])
{
    while(1)
    {
        printf("-----1.注册-----\n");
        printf("-----2.登录-----\n");
        printf("-----3.退出-----\n");
        printf("输入功能:");
        int menu;
        scanf("%d",&menu);
        while(getchar()!=10);
        switch(menu)
        {
        case 1:
            regist();
            break;
        case 2:
            login();
            break;
        case 3:
            exit(0);
            break;
        default:
            printf("输入有误\n");
            break;
        }
    }
    return 0;
}

day1-IO_第1张图片

day1-IO_第2张图片

你可能感兴趣的:(c语言,算法,开发语言)