医院排队叫号系统(JAVA版)

医院排队叫号系统(JAVA版),第1张

医院排队叫号系统(JAVA版)

题目:
需求:模拟病人到医院排队看病的情况。
数据要求:病人编号、姓名、性别、年龄。
功能要求:
(1)排队——病人把病历本交到护士手中,进行排队。
(2)就诊——病人排队队列中最前面的病人就诊,并将其从队列中删除。
(3)查看排队——显示所有排队病人的信息。
(4)下班——停止排队。

思路:
用一个简单的链式队列,来作为进行医院排队的数据结构,再设计一个病人类来存储病人的简要信息

代码实现:

import java.util.*;
public class callzyh {
	@SuppressWarnings({"all"})
	public static void main(String[] args) {
		linkQueue queue = new linkQueue();
		Scanner scanner=new Scanner(System.in);
		while (true){
			System.out.println("————医院病人排队就诊系统主菜单————");
			System.out.println("1.添加病人排队");
			System.out.println("2.当前就诊病人信息");
			System.out.println("3.查看所有排队病人信息");
			System.out.println("4.删除排队病人信息");
			System.out.println("5.停止排队,退出系统");
			System.out.println("请输入序号选择相应功能");
            int choice =scanner.nextInt();
            switch (choice){
                case 1:
                	Scanner input=new Scanner(System.in);
                	System.out.println("请输入病人姓名:");
            		String bname = input.next();
            		System.out.println("请输入病人性别:");
            		String bsex = input.next();
            		System.out.println("请输入病人年龄:");
            		int bage = input.nextInt();
            		System.out.println("请输入病人编号:");
            		int bnumber = input.nextInt();
                    Patient patient1=new Patient(bname,bsex,bage,bnumber);
                    queue.enQueue(patient1);
                    System.out.println("排队信息添加成功!");
                    break;
                case 2:
                	System.out.println("当前患者队列中应就诊的是:"+queue.jiuzhen());
                    break;
                case 3:
                	System.out.println("————当前所有排队患者信息————:");
                	queue.findline();
                    break;
                case 4:
                	queue.shanchu();
                    break;
                case 5:
                	System.out.println("医院已下班!");
        			System.exit(0);
        			System.out.println("已退出");
                default:
                	System.out.println("请输入正确的选择[1-5]!");
                    break;
            }
        }
	}
}
class Patient{
	int Pnumber;
	String Pname;
	String Psex;
	int Page;
	public Patient() {}
	public Patient(String pname,String psex,int page,int pnumber) {
		
		Pname = pname;
		Psex = psex;
		Page = page;
		Pnumber = pnumber;
	}
	@Override
	public String toString() {
		return "病人信息:n姓名:" + Pname + ", 性别:" + Pname + ", 年龄:" +Page+ ",编号" + Pnumber + "n";
	}
	
	
}
class linkQueue{
    public static final String ToString = null;
	private Node front;
    private Node rear;

    public linkQueue(){
		front = null;
		rear = null;
}
    public void enQueue(T Patient){
    	Node node = new Node(Patient, null);
    	if(front == null){
			front = node;
		}else{
			rear.next = node;
		}
		rear = node;
    }
    public T shanchu(){
    	if(front==rear) {
    		System.out.println("无病人看诊");
    		return null;
    	}
    	T p=front.data;
    	front=front.next;
    	if(front==null)
    		this.rear=null;
    	return p;
    }
    public void findline() {
    	if(front==rear) {
    		System.out.println("无病人看诊!");
    		return;
    	}
    	else{
    		Node p = front;
            while (p != rear) {
                System.out.print(p.data + " ");
                p = p.next;
            }
            System.out.print(p.data + " ");
        }
    }
    public T jiuzhen(){
    	if(front != null){
			return front.data;
		}
		return null;
    }
    public boolean isEmpty(){
    	return this.front == this.rear;
    }
	public String toString() {
		return "linkQueue [front=" + front + ", rear=" + rear + "]";
	}
	private static class Node{
        T data;
        Node next;
        private Node(T data, Node next) {
            this.data = data;
            this.next = next;
        }
    }

注:
此文章是提供一种在JAVA中最基础的项目,一个比较简单易上手的利用数据结构存储数据的例子,如有错误,请指正。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5672216.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存