我正在尝试用 C 语言编写一个程序,为用户提供一个预订自习室的菜单。
1. 预订房间
2. 腾出房间
3. 显示可用房间
4.退出
共有10间客房。我不确定如何在数组中使用更改值,其中 0 == 房间打开,1 == 房间关闭。
#include <stdio.h>
void print_arr(int room[], int elements);
int search_arr(int room[], int elements, int open);
int main(void)
{
int room[10] = { 1, 1, 1, 1, 1, 1, 1, 0, 0, 0 }; // array for 10 rooms
int result, open;
print_arr(room, 10);
open = 0;
result = search_arr(room, 10, open);
if (result == -1)
printf("There are no open rooms. \n");
else
printf("There are %d vacant Rooms. ", result);
return 0;
}
void print_arr(int room[], int elements)
{
int i;
printf("Rooms: ");
for (i = 0; i < elements; i++)
{
printf("%d ", room[i]);
}
printf("\n");
}
int search_arr(int room[], int elements, int open)
{
int i;
for (i = 0; i < elements; i++)
{
if (room[i] == open)
printf("Vacant Room: %d \n", room[i]);
return(open); //found open rooms
}
return(-1); //no open rooms found
}
最佳答案
您必须计算数组中空闲(开放)房间的数量,例如:
int search_arr(int room[], int elements, int open)
{
int free = 0;
int i;
for (i = 0; i < elements; i++)
{
if (room[i] == open) {
printf("Vacant Room number: %d \n", i);
free++;
}
}
return(free); // return number of vacant rooms; 0 if no rooms are free ;-)
}
关于c - 使用数组做一个自习室预约程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25874042/