【C语言程序设计第四版】例12-5代码

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define SIZE 5
struct sysuser{
    char username[20];
    char pwssword[8];
};

void encrypt_(char *pwd);

int main(void){
    FILE *fp;
    int i;
    struct sysuser u[SIZE], su[SIZE], *pu=u, *psu=su;
    
    if ((fp=fopen("f12-5.dat", "wb+"))==NULL) {
        printf("File open error\n");
        exit(0);
    }
    
    for (i = 0; i<SIZE; i++, pu++) {
        printf("Enter %d th sysuser(name password):", i);
        scanf("%s%s",pu->username,pu->pwssword);
        encrypt_(pu->pwssword);
    }
    pu = u;
    fwrite(pu, sizeof(struct sysuser), SIZE, fp);
    rewind(fp);
    fread(psu, sizeof(struct sysuser), SIZE, fp);
    
    for (i = 0; i < SIZE; i++, psu++) {
        printf("%-10s%s\n", psu->username, psu->pwssword);
    }
    
    if (fclose(fp)) {
        printf("Can not close the file!\n");
        exit(0);
    }
    return 0;
}

void encrypt_(char *pwd){
    int i;
    for (i=0; i< strlen(pwd); i++) {
        pwd[i] = pwd[i] ^ 15;
    }
    
}

 

上一篇:Oracle项目管理实践课程-数据定义概述


下一篇:H.266/VVC帧间预测技术学习:带有运动矢量差的Merge技术(Merge mode with MVD)