C语言:将职工的职工姓名、职工号、性别、年龄和工资数据存放到文件eml.dat中并抽出职工姓名和工资的信息创建一个职工工资文件zggz.dat

题目来源:大工慕课 链接
作者:Caleb Sung

题目要求

将职工的数据存放到文件eml.dat中,职工信息包括职工姓名、职工号、性别、年龄和工资。要求在文件eml.dat中,抽出职工姓名和工资的信息创建一个职工工资文件zggz.dat

创建eml.dat

新建一个空白记事本文件,打开后写入:

Tom 001 M 20 6000 Bob 002 M 30 8000 Amy 003 F 25 5000

这里的文本数据均可以自由改动,只要符合格式就好。
如果看不懂为什么是这种格式的话,你搭配下面的代码看大概就会明白了。
保存后退出,将文件重命名为eml.dat。如果你的电脑文件显示默认不带后缀名,请百度以下字段自行学习一个,注意系统:

Windows 显示文件后缀名

重命名后缀名将会提示警告信息,不用管,选择确定或者是。
最后将这个文件粘贴/剪切到你的代码文件目录下。
啥?你不知道什么叫同一目录下?就是同一文件夹下!之前被一位妹子因为这个问题问了好久,所以贴在这里=_=

闲谈:关于如何科学提高代码的逼格水平

这部分主要是看了学弟写的代码之后有感而发。即使大家在日后并不需要写代码为生(雾),在我们coding的时候也应该保持着一种严肃的态度才对。而写出好看的代码不仅赏心悦目,也方便日后的维护,还可以方便我们愉快的装逼
这里作为抛砖引玉,简单介绍两条:

1. 关于CLI中的提示

在我们这个作业中涉及读写文件,因而可能存在文件读写失败的情况,这一点我们在写代码的时候最好注意一下。
学弟这里写了一条这样的文件打开失败时的警告:

not opened

倒也不是说这样的警告不合格,不过我们这样写警告提示的话会不会让逼格提高不少呢?

[Error] Exception occured while opening file: eml.dat

程序正常运行的时候则在CLI中提示:

Command successfully executed.

有没有显得专业很多呢?嘿嘿嘿,大家意会即可~ 当然洋文水平也是很重要滴!

2. 代码格式一定要工整严谨

这部分不多说了,大家debug这么久大概心里也是有数的~
其实我的代码就很遵守这一条大家可以学习一下嘿嘿嘿

更多内容请大家参考这位大佬写的博文,非常详细非常长,有精力看的清戳
http://www.cocoachina.com/ios/20170105/18515.html
甚至还有专门的书籍教大家如何提高自己代码的美感,也可以去学习一个~
Python代码最美!不接受任何反驳!

参考代码

#include<stdio.h>
void main(){
    FILE *fr, *fw;
    int i=0, age, salary;
    char name[10], gender, id[18];

    fr = fopen("eml.dat", "r");
    fw = fopen("zggz.dat", "w");

    if(!fr)
        printf("[Error] Exception occured while opening file: eml.dat\n");

    else{
        printf("Command successfully executed.\n");
        for(i=0; i<3; i++){
            fscanf(fr, "%s %s %c %d %d ", name, &id, &gender, &age, &salary);
            fprintf(fw, "%s:\t%d\n", name, salary);
        }
    }

    fclose(fr);
    fclose(fw);
}

运行效果

跑完之后记事本打开zggz.dat看一眼,是这样子的

Tom:    6000
Bob:    8000
Amy:    5000

完美~

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值