C#,《小白学程序》第五课:队列(Queue)

1 文本格式

/// <summary>

/// 《小白学程序》第五课:队列(Queue)

/// 日常生活中常见的排队,软件怎么体现呢?

/// 排队的基本原则是:先到先得,先到先吃,先进先出

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void button5_Click(object sender, EventArgs e)

{

// #1 定义一个队列(成员是同学信息Classmate)

Queue<Classmate> q = new Queue<Classmate>();

// #2 排队

// 这里选择男同学参与排队

int n = 8;

for (int i = 0; i < n; i++)

{

if (matesi.Gender == "男")

{

// 添加队列信息

q.Enqueue(matesi);

}

}

// #3 开饭啦!(输出队列信息)

StringBuilder sb = new StringBuilder();

while (q.Count > 0)

{

// 选择队列第一个成员

Classmate m = q.Dequeue();

sb.AppendLine(m.Id + " " + m.Name + ": " + m.Gender + "<br>");

}

webBrowser1.DocumentText = sb.ToString();

}

2 代码格式

cs 复制代码
/// <summary>
/// 《小白学程序》第五课:队列(Queue)
/// 日常生活中常见的排队,软件怎么体现呢?
/// 排队的基本原则是:先到先得,先到先吃,先进先出
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button5_Click(object sender, EventArgs e)
{
    // #1 定义一个队列(成员是同学信息Classmate)
    Queue<Classmate> q = new Queue<Classmate>();

    // #2 排队
    // 这里选择男同学参与排队
    int n = 8;
    for (int i = 0; i < n; i++)
    {
        if (mates[i].Gender == "男")
        {
            // 添加队列信息
            q.Enqueue(mates[i]);
        }
    }

    // #3 开饭啦!(输出队列信息)
    StringBuilder sb = new StringBuilder();
    while (q.Count > 0)
    {
        // 选择队列第一个成员
        Classmate m = q.Dequeue();
        sb.AppendLine(m.Id + " " + m.Name + ": " + m.Gender + "<br>");
    }
    webBrowser1.DocumentText = sb.ToString();
}

你非常幸运读到的是世界上 唯一一本真正的程序教程。

相关推荐
Python+994 分钟前
Java 枚举类(Enum)详解:从基础到高级应用
java·开发语言·python
二炮手亮子28 分钟前
浅记java线程池
java·开发语言
rockey62739 分钟前
基于AScript的JavaScript脚本语言发布啦
javascript·c#·.net·js·script
zmzb01031 小时前
C++课后习题训练记录Day157
开发语言·c++
dunge20261 小时前
2026年7月最新ChatGPT Plus / Pro 与 Codex:当 AI Agent 最新5.6版本来袭,必须理解事务、幂等与补偿
开发语言·人工智能·python
LuoCore1 小时前
AForge.Video.FFMPEG.dll加载失败解决指南
c#
吴可可1232 小时前
C#元组解构实现变量交换
c#
爱吃牛肉的大老虎2 小时前
rust基础之环境搭建
java·开发语言·rust
openKylin2 小时前
与全球技术演进同频,openKylin 3.0从C迈向Rust
c语言·开发语言·rust·开源·开放原子·openkylin
疯狂打码的少年3 小时前
【软件工程】结构化设计:模块独立性与耦合内聚
java·开发语言·笔记·软件工程