C# 重写数组并将零放回原位

C# 重写数组并将零放回原位,c#,C#,我正在做一些学校的工作,我只想被指向正确的方向。我正在创建一个酒店项目,该项目为人们登记入住,并在他们离开时登记入住。我正在为某个部分而挣扎,该部分询问您需要腾出哪个房间,然后在数组中的该位置放置一个0。我不想拐弯抹角,我不知道从哪里开始。这是到目前为止我的代码 using System; namespace Task7_2 { class Motel { int[] rooms; const int MAX = 21; in

我正在做一些学校的工作,我只想被指向正确的方向。我正在创建一个酒店项目,该项目为人们登记入住,并在他们离开时登记入住。我正在为某个部分而挣扎,该部分询问您需要腾出哪个房间,然后在数组中的该位置放置一个0。我不想拐弯抹角,我不知道从哪里开始。这是到目前为止我的代码

using System;

namespace Task7_2
{


    class Motel
    {
        int[] rooms;
        const int MAX = 21;
        int roomNumber, guests, vacate;

        static void Main()
        {
            Motel BatesMotel = new Motel();
            BatesMotel.runMotel();
            BatesMotel.showAllRooms();



        }
        //*******************************************************
        public Motel()
        {
            rooms = new int[MAX + 1];        // allow rooms from 1 to MAX
        }
        //******************************************************
        public void runMotel()
        {
            string choice = "";
            do
            {
                Console.Clear();
                Console.WriteLine("The Bates Motel");
                Console.WriteLine("===============");
                Console.WriteLine("1. Book a room");
                Console.WriteLine("2. Vacate a room");
                Console.WriteLine("3. Display ALL Room Details");
                Console.WriteLine("4. Vacate ALL rooms");
                Console.WriteLine("5. Quit");
                Console.Write("Enter your choice : ");
                choice = Console.ReadLine();
                if (choice == "1")
                {
                    bookRoom();
                }
                else if (choice == "3")
                {

                    showAllRooms();
                }
                else if (choice == "2")
                {
                    vacateOneRoom();
                }
            }
            while (choice != "5");
        }
        //*******************************************************
        public void bookRoom()
        {

            Console.WriteLine("\nThe Bates Motel");
            Console.WriteLine("===============");
            Console.WriteLine("Book a room");
            Console.Write("Enter the room number : ");
            roomNumber = Convert.ToInt32(Console.ReadLine());
            Console.Write("How many guests : ");
            guests = Convert.ToInt32(Console.ReadLine());
            rooms[roomNumber] = guests;     // make the booking
            Console.WriteLine("Room " + roomNumber + " booked for " + guests + " people");

        }
        //*******************************************************
        public void showAllRooms()
        {

            for (int i = 1; i < MAX; i++)
            {
                Console.Write("Room " + (i )+"\t\t\t" + rooms[i] + " guests \n" );
            }
            Console.ReadLine();


        }
        public void vacateOneRoom()
        {
              Console.WriteLine("Which room is being vacated");


              Console.ReadLine();
        }
      }
}
使用系统;
名称空间任务7_2
{
阶级汽车旅馆
{
国际[]房间;
常数int MAX=21;
房间号,客人,空出;
静态void Main()
{
贝茨莫特尔汽车旅馆=新汽车旅馆();
贝茨莫特尔汽车旅馆();
BatesMotel.陈列室();
}
//*******************************************************
公共汽车旅馆
{
房间=新建int[MAX+1];//允许房间从1到MAX
}
//******************************************************
公共汽车旅馆
{
字符串选择=”;
做
{
Console.Clear();
Console.WriteLine(“贝茨汽车旅馆”);
Console.WriteLine(“=========================”);
控制台。WriteLine(“1.预订房间”);
控制台。写线(“2.腾出房间”);
控制台。写入线(“3.显示所有房间详细信息”);
控制台。写线(“4.腾出所有房间”);
控制台。写入线(“5.退出”);
控制台。写(“输入您的选择:”;
choice=Console.ReadLine();
如果(选项==“1”)
{
书房();
}
else if(选项==“3”)
{
陈列室();
}
else if(选项==“2”)
{
休假室();
}
}
而(选项!=“5”);
}
//*******************************************************
公共书房()
{
控制台。WriteLine(“贝茨汽车旅馆”);
Console.WriteLine(“=========================”);
Console.WriteLine(“预订房间”);
控制台。写入(“输入房间号:”);
roomNumber=Convert.ToInt32(Console.ReadLine());
控制台。写下(“多少客人:”);
guests=Convert.ToInt32(Console.ReadLine());
房间[roomNumber]=客人;//进行预订
Console.WriteLine(“房间”+房间号+”为“+客人+人员”预订);
}
//*******************************************************
公众休息室
{
对于(int i=1;i
使用System.Collections.Generic;
List myList=新列表();
int num=22;
myList.Add(num);
myList.Remove(num)//删除匹配项
增加(33);
myList.RemoveAt(0)//在数组索引处删除
当时有人订了一个房间

barray[room_number]=true;
当有人腾出一个特定的房间

barray[room_number]=false;
检查

for(int i=0;i<barray.lenght;i++)
{
if(barray[i]==true)
Console.WriteLine("Room number"+300+i+"is not free");
else
Console.WriteLine("Room number"+300+i+"is free");
}

for(int i=0;i您忘记了代码。:)没有收到您的代码-您可以编辑您的问题以将其包括在内吗?@Candide:不仅如此-许多酒店的每层客房数量远远少于100间,而且会根据级别对客房进行编号,比如100*level+room-number。只是复制和粘贴代码而不做任何解释可能会帮助当前的询问者解决这个问题,但也不会真正帮助他们解决未来的类似问题,这段代码从列表中删除项目,而OP请求将项目设置为0,以表示房间空闲。
barray[room_number]=false;
for(int i=0;i<barray.lenght;i++)
{
if(barray[i]==true)
Console.WriteLine("Room number"+300+i+"is not free");
else
Console.WriteLine("Room number"+300+i+"is free");
}