程序设计基础最后一次作业——解析

news2024/9/22 7:15:18

文章目录

      • 打开项目文件
      • 完成题目
        • initialize函数从文件info.txt中读入人员信息数据
        • PrintAll
        • SearchbyName
        • Insert
        • SendMessage
      • 问题
        • 为什么txt打开是乱码

打开项目文件

  • 解压文件列表如下,每一个框是一组,.h后缀的文件是对应cpp文件的头文件,声明了相关的变量和函数,单独打开一个cpp文件没用,需要将整个文件作为一个项目打开。
    在这里插入图片描述

在这里插入图片描述

  • 使用dev打开上述文件,截图如下。

  • 下述为dev的项目创建方式,打开dev创建一个project,并将之保存到原始文件的位置。

在这里插入图片描述
在这里插入图片描述

  • 将五个源代码文件添加到对应文件中,右击project,选择add to project中,选中需要添加的五个文件,然后添加即可。
    在这里插入图片描述
    在这里插入图片描述

  • 加入后可以在project看到五个文件,打开inoculationsys.cpp文件,然后点击编译运行,即可运行。

在这里插入图片描述

完成题目

initialize函数从文件info.txt中读入人员信息数据

  • 要求大家从txt文件中读取结构体数据,这里给大家这了一些连接。
    在这里插入图片描述
  • fileoperation需要修改的部分,大家可以参考一下上面怎么写的。
    在这里插入图片描述
  • 将结构体保存在txt并读取的参考链接

PrintAll

  • 负责将人员信息以一定格式输出。运行样例如下,这部分大家需要参考结构体的具体内容进行输出,
    在这里插入图片描述
  • 结构体的信息如下
    在这里插入图片描述

SearchbyName

  • 功能按姓名查询某个人的信息并显示,如果重名,则显示第一个查找到的人员信息,并返回其在数组中的下标。运行效果如下

在这里插入图片描述

  • 这部分就是要会写搜索算法

Insert

  • 负责向人员信息数组添加一个新的人员信息(25分)。具体要求如下(可以通过调用VacInfo InputInfo( )完成,也可以不调用)

  • 这部分最重要的是要能够进行校验

    • (1) 人名可以重复
    • (2) 年龄验证位于在0~120之间,否则重新输入
    • (3) 电话号码必须11位且随机生成(不是由键盘录入),其中前3位必须随机选择180,158,130中的一个,而后8位为随机数字。
    • (4) 日期不做校验,默认所有月份为30天。
    • (5) 可以两针皆未接种,没有接种的年月日均为0。
    • (6) 可以仅接种第一针,而不接种第二针。
    • (7) 如果已经接种第一针和第二针,那么第二针接种时间必须和第一针间隔24天,否则要求重新输入第二针时间。
  • 运行结果如下,注意,校验不合格的需要重新输入
    在这里插入图片描述

  • 输入接种1针人员信息

    在这里插入图片描述

  • 输入接种2针人员信息,第一次录入的第二针时间间隔不到24天,重新输入第二针时间。
    在这里插入图片描述

SendMessage

  • 分别通知不同类型的人,要求:
    • 通知未接种第一针的人员;
    • 通知接种了第一针,且时间间隔距今天(必需设定为2022/1/3号)已经24天可以接种第二针的人员。
  • 这部分就是能够检索出两类人员,分别在窗口进行输出,模拟通知即可

在这里插入图片描述

  • 其中Delete和WriteFile函数是已经完成的。

问题

为什么txt打开是乱码

在这里插入图片描述

  • 这里的数据是以结构体的方式进行保存的,所以需要使用结构的方式读取文件。
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/69462.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

理解路由表 实验报告

实验名称: 理解路由表 一、实验预习 1、实验目的 利用route命令查看、增加、删除等主机路由信息,以进一步熟悉和理解路由表。 实验内容(包括自己设计增加的内容等) 利用route命令查看、增加、…

制造业数据安全如何保证?天翎知识文档管理系统+群晖NAS企业级解决方案

编者按:本文分析了制造业文档管理中的需求,并进一步指出天翎知识文档管理系统群晖NAS企业级解决方案是如何满足企业需求,为企业赋能创新的。 关键词:免安装维护,流程审批,私有化部署,安全技术&…

基于人工蜂群算法的新型概率密度模型的无人机路径规划(Matlab代码实现)

目录 1 概述 1.1研究背景 2 运行结果 3 Matlab代码实现 4 结语 5 参考文献 1 概述 文章提出一种基于人工蜂群算法的非确定性双向规划机制搜索算法。首先针对不同场景,采用两种方法进行环境建模;其次,结合非确定性搜索机制引入双向规划方…

数字后端:track的作用与创建

1.track的定义 EDA工具根据LEF(或tech file)中每层金属的pitch大小,在芯片内部自动生成各层金属连续的、规则的绕线轨道(routing track),routing track指的就是绕线的路径。 tech lef示例 tech file示例 DEF中保存的TRACK信息如下…

射频工程师自学HFSS、CST和ADS打开方式

导读:大家好,我是RF小木匠,受仿真秀平台邀请,近日正式入驻了仿真秀App,今天RF小木匠想和大家聊一下电磁仿真软件学习那些事。 一、仿真是射频工程师的必备技能 当我们开始接触电磁波和微波工程的时候,第一件事就是仿真。电磁仿真…

Docker 安装 Python

文章目录使用docker pull python:3.8 命令安装使用python镜像(一)新建py文件(二)运行容器使用docker pull python:3.8 命令安装 查找Docker Hub上的python镜像,输入命令:docker search python 这里我拉取…

【图像去噪】中值+均值+维纳+小波滤波图像去噪【含GUI Matlab源码 753期】

⛄一、图像去噪及滤波简介 1 图像去噪 1.1 图像噪声定义 噪声是干扰图像视觉效果的重要因素,图像去噪是指减少图像中噪声的过程。噪声分类有三种:加性噪声,乘性噪声和量化噪声。我们用f(x,y)表示图像,g(x,y&#xff0…

HDFS的概念及shell操作

HDFS 产出背景及定义 产生背景 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系 统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这 就是分布式文件管…

虚拟机共享物理机网路的NAT连接方法

NAT模式指借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网。电脑连接wifi,让笔记本虚拟机也能够上网,其配置方法如下: 1、打开VMware Workstation软件,点击编辑虚拟机设置,进入到配置虚拟机参数菜单。…

加密技术和二维码

1、对称加密:单密钥加密。一个密钥可以用来加密也可以用来解密 —- AES 2、非对称加密:有两把密码,公钥(用于加密),私钥(用于解密) 3、摘要算法:把任意长度的输入,根据算法生成一串固定长度的伪随机数 —…

【安全扫描处理问题心得】

安全扫描处理问题心得 在安全扫描中处理了一些问题,现在来总结一下 1.mysql漏洞(CVE-2022-21595 CVE-2022-21617 CVE-2022-21608 CVE-2022-2097 CVE-2022-21592 CVE-2022-21589) 解决过程 我们公司安扫文档中的 解决办法 如下: 目…

JAVA SCRIPT设计模式--创建型设计模式之原型模式(4)

JAVA SCRIPT设计模式是本人根据GOF的设计模式写的博客记录。使用JAVA SCRIPT语言来实现主体功能,所以不可能像C,JAVA等面向对象语言一样严谨,大部分程序都附上了JAVA SCRIPT代码,代码只是实现了设计模式的主体功能,不代…

Sunday 算法详解

Sunday 算法 Sunday算法是Daniel M.Sunday于1990年提出的字符串模式匹配。其核心思想是:在匹配过程中,模式串发现不匹配时,算法能跳过尽可能多的字符以进行下一步的匹配,从而提高了匹配效率。 一、匹配机制 匹配机制非常容易理…

PyTorch笔记 - 开发技巧与爱因斯坦标示法(einops)

欢迎关注我的CSDN:https://blog.csdn.net/caroline_wendy 本文地址:https://blog.csdn.net/caroline_wendy/article/details/128222398 NLP seq2seq代码编写技巧 数据 tokenization,离散符号,翻译,划分tokentoken2idx,将token变成idxadd SoS&EoS,开头和结尾添加标识…

代码随想录算法训练营第五十七天| LeetCode647. 回文子串、LeetCode516. 最长回文子序列

一、LeetCode647. 回文子串 1:题目描述(647. 回文子串) 给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不…

Unity3d C#获取海康/大华摄像头在萤石平台直播视频流功能(含源码)

前言 实现该功能主要是因为之前硬件实施工程是给我的视频流地址总是失效,原因就是视频流地址其实都有一个过期时间(类似于:rtmp://rtmp01open.ys7.com:/v3/openlive/_1_1?expire1669341172&id***&t8cb15956b1ca09770d1496bff3b8ccb…

电子书小程序源码

资源简介 价值8k的的电子书资料文库文集ip打造流量主小程序系统源码 个人即可搭建,附上此系统源码以及详细的‘’一小时的小白手把手教搭建教程‘’ 下面开始系统介绍: 无意中在群里刷到一个文集小程序 点击立即学习里面,是电子书。 点击了…

虹科分享|基于CAN/CAN FD技术的机器狗是什么样的?

机器狗是一种结合了仿生学和人工智能的仿生四足机器人,其外形与四足动物相似,由于其运动摆脱了轮式和履带式的设计,机器狗的机动性更为强大,能够灵活地完成多种复杂的运动,并能够在不同的地理环境中自主行走&#xff0…

oracle 定时任务删除数据

这几天在工作中遇到一个问题就是:要删除表在备份表中已存在的数据(2000多万数据),这个数据是SQL查出来的,例如: select count(1) from JY_SALE_FULLORDER_DTL where LINE_NUM in (select b.LINE_NUMfrom JY…

osgEarth示例分析——osgearth_splat

前言 osgearth_splat示例,展示如何加载图片贴在地球上,且通过分类,贴文理绘制森林、草地等。 执行命令:osgearth_splatd.exe 效果 整个地球的影像,加载的一张贴图。黑白点点,是不同的贴图。当拉进放大后…