weixin_59794811
2021-06-30 13:11
采纳率: 100%
浏览 13

C语言 1道关于结构体的题

十八、生日祝贺 某企业有为员工祝贺生日的传统,但随着企业规模的扩大,员工人数的增多,要求输入生日(月、日),系统查找出指定日期过生日的员工。 要求用文件保存员工数据,对输入的员工数据做合理性检查。例如,员工的工号不能重复、生日数据的年、月、日必须在合理范围内。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • CSDN专家-link 2021-06-30 13:15
    已采纳

    员工需要有哪些属性呢?工号,生日,名字,还有啥

    typedef struct _WORKER
    {
        int nid;
        int year;
        int month;
        int day;
        char name[20];
    }WORKER;
    
    WORKER workers[100];
    int n = 0;
    
    void findworker(int month,int day,WORKER worker[],int &num)
    {
      num = 0;
      for(int i=0;i<n;i++)
      {
        if(workers[i].month == month && workers[i].day == day)
          worker[num++] = workers[i];
      }
    }
    
    bool findid(int id)
    {
      for(int i=0;i<n;i++)
        if(workers[i].nid == id)
          return true;
      return false;
    }
    
    void addworker()
    {
      printf("请输入员工信息:");
      scanf("%d %d %d %d %s",&workers[n].nid,&workers[n].year,&workers[n].month,&workers[n].day,workers[n].name);
      if(findid(workers[n].nid)
      {
        printf("id已经存在。\n");
        return;
      }
      //这里增加其它有效性检查
      n++;
    }
    
    void showmenu();
    
    void readdata();
    
    void savedata();
    
    int main()
    {
      //暂停,现在没时间写了......
    }
    
    点赞 打赏 评论

相关推荐 更多相似问题