病人就医管理系统

简介: 病人就医管理系统一.课程设计目的1.培养学生程序设计开发的基本素质、思维方法;2.培养分析和解决问题的能力;3.使学生在实践过程中灵活运用所学的知识,逐渐掌握复杂软件的设计和开发技能,为后面的认知实习与社会实践打下基础。

病人就医管理系统

一.课程设计目的

1.培养学生程序设计开发的基本素质、思维方法;

2.培养分析和解决问题的能力;

3.使学生在实践过程中灵活运用所学的知识,逐渐掌握复杂软件的设计和开发技能,为后面的认知实习与社会实践打下基础。


二、主要任务

(1)熟练掌握队列的两种存储方式。

(2)掌握队列的基本操作及应用。

(3)利用队列实现病人就医管理模拟程序。


三、项目内容:

【问题描述】

设计一个病人就医管理系统

【基本要求】

编写一个程序定义行医,反映病人到医院看病,排队看医生的情况,在病人排队过程中,

主要发生两件事:

(1)病人到达诊室,将病历本交给护士,排到等待队列中候诊。

(2)护士从等待队列中取出一位病人的病历,该病人进入诊室就诊。

要求程序采用菜单方式,其选项及功能说明如下:

(1)排队------输入病人的病历号,加入到病人排队队列中

(2)就诊-------病人排队队列中最前面的病人就诊,并将其从队列中删除。

(3)查看排队------从队首到队尾列出所有的排队病人的病历号。

(4)下班---------退出运行。


【实现提示】

病人到达诊室,输入病人的病历号,加入到病人排队队列中。-病人排队队列中最前面的病人就诊,并将其从队列中删除。

#include <stdio.h>
#include <malloc.h>
typedef struct qnode
{
    int data;
    struct qnode* next;
} QNode;            /*链队结点类型*/
typedef struct
{
    QNode* front, * rear;
} QuType;           /*链队类型*/
void SeeDoctor()
{
    int sel, flag = 1, find, no;
    QuType* qu;
    QNode* p, * q;
    qu = (QuType*)malloc(sizeof(QuType));    /*创建空队*/
    qu->front = qu->rear = NULL;
    while (flag == 1)                             /*循环执行*/
    {
        printf("1:排队 2:就诊 3:查看排队 4:下班  请选择:");
        scanf_s("%d", &sel);
        switch (sel)
        {
        case 1:
            printf("  >>输入病历号:");
            do
            {
                scanf_s("%d", &no);
                find = 0;
                p = qu->front;
                while (p != NULL && !find)
                {
                    if (p->data == no)
                        find = 1;
                    else
                        p = p->next;
                }
                if (find)
                    printf("  >>输入的病历号重复,重新输入:");
            } while (find == 1);
            p = (QNode*)malloc(sizeof(QNode));   /*创建结点*/
            p->data = no;
            p->next = NULL;
            if (qu->rear == NULL)                 /*第一个病人排队*/
            {
                qu->front = qu->rear = p;
            }
            else
            {
                qu->rear->next = p;
                qu->rear = p; /*将*p结点入队*/
            }
            break;
        case 2:
            if (qu->front == NULL)                /*队空*/
                printf("  >>没有排队的病人!\n");
            else                                /*队不空*/
            {
                p = qu->front;
                printf("  >>病人%d就诊\n", p->data);
                if (qu->rear == p)            /*只有一个病人排队的情况*/
                {
                    qu->front = qu->rear = NULL;
                }
                else
                    qu->front = p->next;
                free(p);
            }
            break;
        case 3:
            if (qu->front == NULL)            /*队空*/
                printf("  >>没有排列的病人!\n");
            else                            /*队不空*/
            {
                p = qu->front;
                printf("  >>排队病人:");
                while (p != NULL)
                {
                    printf("%d ", p->data);
                    p = p->next;
                }
                printf("\n");
            }
            break;
        case 5:
            if (qu->front != NULL)            /*队不空*/
                printf("  >>请排队的病人明天就医!\n");
            flag = 0;                     /*退出*/
            break;
        }
    }
    p = qu->front;  //销毁队列
    while (p != NULL)
    {
        q = p->next;
        free(p);
        p = q;
    }
}
int main()
{
    SeeDoctor();
    return 0;
}

运行结果:

14.png

相关文章
|
数据采集 API 开发者
快手商品数据采集接口
快手商品数据采集接口
阿里云商标注册申请官方入口(附商标自助申请流程)
阿里云商标分为商标智能注册申请、商标安心注册申请和商标顾问注册申请
33493 4
阿里云商标注册申请官方入口(附商标自助申请流程)
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
拒绝“为了转型而转型”:深度盘点企业数字化转型后的四大核心增量价值
本文深度解析数字化转型的四大核心价值:生产力跃升(AI Agent实现“智能驾驶”)、决策进化(数据驱动实时洞察)、组织重构(人机协同的“企业大脑”)、商业创新(服务化与C2M模式)。以实在Agent为例,揭示如何通过大模型赋能,让转型真正落地见效。(239字)
421 1
拒绝“为了转型而转型”:深度盘点企业数字化转型后的四大核心增量价值
|
2月前
|
数据采集 人工智能 前端开发
AI应用软件开发流程
AI应用开发不同于传统软件,需数据、算法、业务逻辑三者协同。全流程含六大阶段:需求与可行性评估、数据工程、提示词与智能体设计、前后端开发、联调测试、部署迭代。强调AI边界管控、流式交互与数据闭环优化。(239字)
|
3月前
|
数据采集 人工智能 JavaScript
GEO优化小白入门:30个问题搞懂AI搜索时代的内容优化
这是一份由Geo专家于磊原创的GEO优化实战指南,用大白话讲透AI搜索时代新规则:GEO不是SEO翻版,而是让AI主动引用你、推荐你的能力。涵盖人性化内容、交叉验证、E-E-A-T权威建设、结构化表达等核心方法,拒绝割韭菜,强调真实经验、长期积累与可信输出,助力个人与中小企业在AI大脑中建立不可替代的专业位置。
472 0
|
5月前
|
人工智能 运维 测试技术
从部署到优化,AI开源知识库实用心得
先交代一下背景:我们团队是中小规模研发+运维混合团队,共12人,核心痛点有两个:一是内网部署的国产化龙芯服务器,很多工具适配性差,之前用的传统Wiki要么装不上,要么运行卡顿;二是研发、运维、测试三个部门的技术知识分散,比如运维的服务器部署文档、研发的接口规范、测试的用例说明,分别存在本地文档、GitLab、企业微信文件夹里,跨部门协作时找资料像“考古”,新人上手更是难上加难。
|
6月前
|
JSON 运维 安全
接入Claude on Bedrock,我遇到的4个注意事项
本项目基于Amazon Bedrock调用Anthropic Claude Sonnet,实现企业级PDF文档关键信息抽取与摘要生成。依托其8万token长上下文、原生多模态及强安全对齐能力,在VPC内网链路中保障数据不出域,兼顾合规性与工程效率。
593 0
|
人工智能 缓存 前端开发
通义灵码2.5+qwen3——节假日抢票不用愁,基于12306-MCP实现个人火车票智能查询小助手!
本项目作为通义灵码2.5的深度实践案例,充分展现了通义灵码2.5编程智能体调用MCP实现大模型智能化工具的强大优势。
774 10
|
人工智能 运维 数据可视化
申报开启丨2025年6月批次阿里云协同育人项目申报指南,支持所有学科丨云工开物
阿里云支持教育部产学合作协同育人项目,助力高校教学创新与人才培养。2025年6月批次申报通知发布,包含教学内容和课程体系改革、实践条件和实践基地建设两大类。具体方向涵盖AI+X专业课程、计算机实践、AIGC设计、大数据分析及人工智能通识教育等,提供资金、技术及资源支持。申报院校需具备实践基地,课程不少于8学时。详情及流程见官方链接,联系刘老师了解更多。
|
人工智能
RealisHuman:AI 生成的人像不真实?后处理框架帮你修复生成图像中畸形人体部位
RealisHuman 是一个创新的后处理框架,专注于修复生成图像中畸形的人体部位,如手和脸,通过两阶段方法提升图像的真实性。
1019 11
RealisHuman:AI 生成的人像不真实?后处理框架帮你修复生成图像中畸形人体部位

热门文章

最新文章