C语言实现:屏幕菜单操控队列初始化、入队出队等全功能操作
以下是一个使用 C 语言实现队列操作的示例代码: ```c #include <stdio.h> #include <stdlib.h> #define MAX_SIZE 100 typedef struct Queue { int front; int rear; int data[MAX_SIZE]; } Queue; // 初始化队列 void initQueue(Queue *q) { q->front = 0; q->rear = 0; } // 判断队列是否为空 int isEmpty(Queue *q) { return q->front == q->rear; } // 判断队列是否已满 int isFull(Queue *q) { return (q->rear + 1) % MAX_SIZE == q->front; } // 入队 void enQueue(Queue *q, int element) { if (isFull(q)) { printf("Queue is full!\n"); return; } q->data[q->rear] = element; q->rear = (q->rear + 1) % MAX_SIZE; printf("Enqueued element: %d\n", element); } // 出队 int deQueue(Queue *q) { if (isEmpty(q)) { printf("Queue is empty!\n"); return -1; } int element = q->data[q->front]; q->front = (q->front + 1) % MAX_SIZE; printf("Dequeued element: %d\n", element); return element; } // 取队头元素 int getFront(Queue *q) { if (isEmpty(q)) { printf("Queue is empty!\n"); return -1; } int element = q->data[q->front]; printf("Front element: %d\n", element); return element; } // 遍历队列 void traverseQueue(Queue *q) { if (isEmpty(q)) { printf("Queue is empty!\n"); return; } int i = q->front; printf("Queue elements: "); while (i!= q->rear) { printf("%d ", q->data[i]); i = (i + 1) % MAX_SIZE; } printf("\n"); } // 销毁队列 void destroyQueue(Queue *q) { q->front = 0; q->rear = 0; } int main() { Queue q; initQueue(&q); int choice, element; printf("Queue Operations:\n"); printf("1. Initialize Queue\n"); printf("2. Enqueue\n"); printf("3. Dequeue\n"); printf("4. Get Front Element\n"); printf("5. Traverse Queue\n"); printf("6. Destroy Queue\n"); printf("0. Exit\n"); do { printf("Enter your choice: "); scanf("%d", &choice); switch (choice) { case 1: initQueue(&q); break; case 2: printf("Enter element to enqueue: "); scanf("%d", &element); enQueue(&q, element); break; case 3: deQueue(&q); break; case 4: getFront(&q); break; case 5: traverseQueue(&q); break; case 6: destroyQueue(&q); break; case 0: printf("Exiting...\n"); break; default: printf("Invalid choice!\n"); } } while (choice!= 0); return 0; } ``` 这段代码实现了一个简单的队列操作程序,包括初始化、入队、出队、取队头元素、遍历队列和销毁队列等功能,并根据用户的选择执行相应的操作。 ######[AI写代码神器 | 934点数解答 | 2024-10-20 17:08:19]
- Python实现Q老师成绩管理任务:修改与查看学生成绩(字节豆包 | 191点数解答 | 2025-12-20 20:55:41)70
- Python 代码助力 Q 老师高效管理班级学生成绩:修改与查看一键搞定(字节豆包 | 326点数解答 | 2025-12-27 20:48:12)73
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)345
- C语言实现:屏幕菜单操控队列初始化、入队出队等全功能操作(字节豆包 | 934点数解答 | 2024-10-20 17:08:19)77
- 7 - 8菜单计价程序-2:Java实现点菜计价与订单管理,附详细代码及注意事项(DeepSeek | 1256点数解答 | 2025-10-17 17:32:14)120
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)313
- C#工程师必知:数组、链表、哈希、队列、栈数据结构优缺点大揭秘! (百度文心 | 561点数解答 | 2023-11-09 17:56:30)263
- 揭秘!十进制整数转其他进制用啥存储结构最合适?答案竟是它!(字节豆包 | 57点数解答 | 2024-11-13 01:21:11)236
- Java 实现仿 Windows 资源管理器:文件管理器功能全解析与代码示例(字节豆包 | 623点数解答 | 2025-01-01 14:59:04)248
- 用队列操作算法模拟周末舞会舞伴配对问题及代码实现(DeepSeek | 601点数解答 | 2025-05-18 11:27:45)183
- C语言实现顺序表基本功能:建表、初始化、销毁等全解析( | 1665点数解答 | 2024-03-21 16:21:47)260
- C语言数据结构:顺序表基本功能(建表、增删查等)实现代码解析( | 2210点数解答 | 2024-03-21 16:53:28)247