c语言医院挂号,c语言医院挂号管理员系统

本文目录一览:

求编程题(看病要排队)的代码,必须用C语言解答,越基础越容易看懂越好,不要从别处copy来

struct BR_ //病人结构体;

{

int id; //病人ID;

int lv;//病人等级;

};

int main()

{

int n,i,j,yisheng,binglv,brnum = 0;

BR_ b2y[3][100] = { };//存放每个医生对应的病人;

int bingnum[3] = {}; //存放每个医生对应的病人个数;

char order[5];

//这里可以把所有输入的字串,存起来,再一一解决; 但是你原来的代码,是输入一个处理一个;

//所以 我也输入一个 处理一个了;

//但是题意是 : 输入完成后,再依次输出;

//所以,只能把要输出的东西,存在一个数组里面(下面的数组);等输入完成后再统一依次输出

char print_[300][8] = {}; //用来存放 最后print的字符串; 每一个out 都要处理一下;

int str_num = 0; //字符串的条数;

scanf(“%d”,n);

for(j = 0 ; j n;++j)

{

scanf(“%s”,order);

if(strcmp(order,”IN”) == 0 ) //字符串比较,如果输入的IN,

{

brnum += 1;

scanf(“%d”,yisheng);

scanf(“%d”,binglv);

BR_ temp;

temp.id = brnum;

temp.lv = binglv;

b2y[ yisheng ][ bingnum[yisheng] ] = temp;

bingnum[yisheng]++;

//排序; 把等级高的 放在前面; 注意使用 稳定排序 的方式;比如下面的选择排序;

int pos = 0;

while(pos != n – 1)

{

for(i = pos + 1; i n;++i)

{

if(b2y[yisheng][pos].lv b2y[yisheng][i].lv)

{

BR_ temp1 = b2y[yisheng][pos];

b2y[yisheng][pos] = b2y[yisheng][i];

b2y[yisheng][i] = temp1;

}

}

pos++;

}

}

else if( strcmp(order,”OUT”) == 0) //

{

scanf(“%d”,yisheng);

if(bingnum[yisheng] = 0) //如果这个医生当前病人为0 输出empty;

strcpy(print_[str_num++],”EMPTY”);

else //不为0;输出排在最前面(也就是等级最高的病人);

{

char temp;

itoa(b2y[yisheng][0].id,print_[str_num++],10);

//最前面的病人 已经处理了,所以把数组后面的元素依次往前移动;

for(i = 0;i bingnum[yisheng] – 1;++i)

{

b2y[yisheng][i] = b2y[yisheng][i + 1];

}

bingnum[yisheng]–;//病人数量递减;

}

}

}

for(i = 0 ; i str_num;++i)

printf(“%s\n”,print_[i]);

return 0;

}

c语言课程设计:医院挂号收费管理系统

三点注意一下应该没有问题了

1结构的构造

2文件的读入和操作

3文件输出

算法的部分不难

lz好好翻翻书,静下心来,挺简单的其实

像这种问题在百度上面,一般的人都不太乐意回答

就算回答了,也是不痛不痒的,就像我一样

除非有人正好做过这道题~~

哈哈

c语言课程设计题目 医院排队看病系统

#include stdio.h

#include malloc.h

typedef int queuetype;

queuetype num=1;

typedef struct qnode

{

    queuetype data;

  struct qnode *next;

} QNode; //链队结点类型

typedef struct 

{

    QNode *front,*rear;

} QuType;

void initlqueue(QuType *L)

{

 L-front=L-rear=NULL;

}

void pushlqueue(QuType *L,queuetype e)

{

 QNode *p=(QNode*)malloc(sizeof(QNode));

 p-data=e;

 p-next=NULL;

 if(!L-front)

 {

  L-front=p;

 }

 if(L-rear)

  L-rear-next=p;

 L-rear=p;

 num++;

}

void deletlqueue(QuType *L)

{

 if(L-front)

 {

  QNode *p;

  p=L-front;

  printf(“第%d位选手已经就诊!\n”,p-data);

  L-front=p-next;

  if(!p)

   L-rear=NULL;

  else

   free(p);

 }

 else

 {

  

  num=0;

  printf(“所有的病人都已就诊完毕!\n”);

 }

}

void showqueueperson(QuType *L)

{

 QNode *p=L-front;

 printf(“输出所有排队者的序号:\n”);

 while(p)

 {

  printf(” %d\n”,p-data);

  p=p-next;

 }

 if(!L-front)

  printf(“病人都已经看病完成!\n”);

}

void quikSee(QuType*L,queuetype e)

{

 QNode *p=L-front,*q,*t;

 while(pp-data!=e)

 {

  t=p;

  p=p-next;

 }

 if(p-data==e)

 {

  printf(“find!%d号即可进行诊疗!\n”,p-data);

  q=t-next;

  if(q-next)

  t-next=q-next;

if(t-next==L-rear)

   t-next=L-rear=NULL;  free(q);

  

 }

 else

  printf(“队列中无此人!无需删除操作!\n”);

}

//链队类型

void SeeDoctor()

{

    int sel,flag=1;

    QuType *qu=(QuType*)malloc(sizeof(QuType));

 queuetype quik=0;

    initlqueue(qu);//创建空队

 while (flag==1) //循环执行

 {

  printf(“1:排队 2:就诊 3:查看排队 4.不再排队,余下依次就诊 5:下班  请选择:”);

  scanf(“%d”,sel);

  switch(sel)

  {        //排队,入队

  case 1: pushlqueue(qu,num); printf(“\n挂号成功!\n”); break;

  case 2: deletlqueue(qu);

   printf(“\n”);break;  //就诊,出队

  case 3: showqueueperson(qu);   break;  //显示排队病人

  case 4: {

     printf(“若您需要马上就诊,请输入您的号:”);

     scanf(“%d”,quik);

     quikSee(qu,quik);

     printf(“\n”);

    }      break;  //任意顺序就诊

  case 5: {

     printf(“抱歉!已下班,请排队的病人明天再来就诊!\n\n”);//下班,明天就医!

     flag=0;     //退出

     break;

    }

  default : printf(“输入错误,请从新输入!\n\n”); continue;

  }

    }

}

void main()

{

 SeeDoctor();

}

病人的姓名等信息就在结构体里加几个成员就行了!主要功能已经实现了!

我截张图给你吧!

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/181556.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-23 06:41
下一篇 2024-11-23 06:41

相关推荐

  • Deepin系统分区设置教程

    本教程将会详细介绍Deepin系统如何进行分区设置,分享多种方式让您了解如何规划您的硬盘。 一、分区的基本知识 在进行Deepin系统分区设置之前,我们需要了解一些基本分区概念。 …

    编程 2025-04-29
  • AES加密解密算法的C语言实现

    AES(Advanced Encryption Standard)是一种对称加密算法,可用于对数据进行加密和解密。在本篇文章中,我们将介绍C语言中如何实现AES算法,并对实现过程进…

    编程 2025-04-29
  • 学习Python对学习C语言有帮助吗?

    Python和C语言是两种非常受欢迎的编程语言,在程序开发中都扮演着非常重要的角色。那么,学习Python对学习C语言有帮助吗?答案是肯定的。在本文中,我们将从多个角度探讨Pyth…

    编程 2025-04-29
  • 如何在树莓派上安装Windows 7系统?

    随着树莓派的普及,许多用户想在树莓派上安装Windows 7操作系统。 一、准备工作 在开始之前,需要准备以下材料: 1.树莓派4B一台; 2.一张8GB以上的SD卡; 3.下载并…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Python被称为胶水语言

    Python作为一种跨平台的解释性高级语言,最大的特点是被称为”胶水语言”。 一、简单易学 Python的语法简单易学,更加人性化,这使得它成为了初学者的入…

    编程 2025-04-29
  • OpenJudge答案1.6的C语言实现

    本文将从多个方面详细阐述OpenJudge答案1.6在C语言中的实现方法,帮助初学者更好地学习和理解。 一、需求概述 OpenJudge答案1.6的要求是,输入两个整数a和b,输出…

    编程 2025-04-29
  • Python按位运算符和C语言

    本文将从多个方面详细阐述Python按位运算符和C语言的相关内容,并给出相应的代码示例。 一、概述 Python是一种动态的、面向对象的编程语言,其按位运算符是用于按位操作的运算符…

    编程 2025-04-29
  • 分销系统开发搭建

    本文主要介绍如何搭建一套完整的分销系统,从需求分析、技术选型、开发、部署等方面进行说明。 一、需求分析 在进行分销系统的开发之前,我们首先需要对系统进行需求分析。一般来说,分销系统…

    编程 2025-04-29
  • Python语言由荷兰人为中心的全能编程开发工程师

    Python语言是一种高级语言,很多编程开发工程师都喜欢使用Python语言进行开发。Python语言的创始人是荷兰人Guido van Rossum,他在1989年圣诞节期间开始…

    编程 2025-04-28

发表回复

登录后才能评论