C#实现学生档案查询

C#实现学生档案查询攻略

简介

本篇攻略将为大家介绍如何使用C#语言实现学生档案查询功能。学生档案查询主要包括查询功能和显示结果功能。查询功能可根据学生姓名、学号等关键词进行查询,显示结果功能则可将查询到的数据在页面上进行展示。接下来,我们将介绍实现此功能的具体步骤。

步骤

1. 新建工程

首先,在Visual Studio中创建一个新的控制台应用程序工程。

2. 创建学生类

在工程中新建一个学生类,类中包含学生信息如姓名、学号、性别、地址等属性。

class Student
{
    public string Name { get; set; }
    public int Id { get; set; }
    public string Gender { get; set; }
    public string Address { get; set; }
    // 还可以添加其他属性,比如:年龄、班级等
}

3. 创建数据存储

创建一个储存学生信息的数据结构,这里我们可以使用List或者数组等数据结构。

List<Student> students = new List<Student>(); // 创建一个List用于存储学生信息

4. 添加学生信息

在代码中手动添加学生信息:

students.Add(new Student { Name = "小明", Id = 1001, Gender = "男", Address = "北京市海淀区" });
students.Add(new Student { Name = "小红", Id = 1002, Gender = "女", Address = "北京市朝阳区" });

或者从文件中读取学生信息:

string file = "students.txt";
StreamReader sr = new StreamReader(file);
string line;
while ((line = sr.ReadLine()) != null)
{
    string[] info = line.Split(",");
    students.Add(new Student { Name = info[0], Id = Convert.ToInt32(info[1]), Gender = info[2], Address = info[3] });
}
sr.Close();

5. 实现查询功能

添加一个查询函数,根据输入的关键字,查找符合条件的学生信息并返回。

public static List<Student> Search(string keyword)
{
    List<Student> result = new List<Student>(); // 创建一个List用于储存查询结果
    foreach (Student s in students)
    {
        if (s.Name == keyword || s.Id.ToString() == keyword || s.Gender == keyword || s.Address == keyword)
            result.Add(s);
    }
    return result;
}

6. 实现结果展示

将查询到的学生信息在控制台显示出来。

void ShowResult(List<Student> result)
{
    Console.WriteLine("查询结果:");
    Console.WriteLine("=======================================");
    Console.WriteLine("姓名\t学号\t\t性别\t地址");
    Console.WriteLine("=======================================");
    foreach (Student s in result)
    {
        Console.WriteLine("{0}\t{1}\t{2}\t{3}", s.Name, s.Id, s.Gender, s.Address);
    }
}

7. 测试

编写代码测试查询功能和结果展示是否正常工作。

static void Main(string[] args)
{
    List<Student> result = Search("小明"); // 进行查询
    if (result.Count == 0) // 判断是否查询到结果
        Console.WriteLine("没有查询到结果!");
    else
        ShowResult(result); // 显示结果
}

示例说明

示例1:手动添加学生信息

static void Main(string[] args)
{
    // 添加学生信息
    students.Add(new Student { Name = "小明", Id = 1001, Gender = "男", Address = "北京市海淀区" });
    students.Add(new Student { Name = "小红", Id = 1002, Gender = "女", Address = "北京市朝阳区" });

    // 进行查询
    List<Student> result = Search("小明");

    if (result.Count == 0) // 判断是否查询到结果
        Console.WriteLine("没有查询到结果!");
    else
        ShowResult(result); // 显示结果
}

示例2:从文件中读取学生信息

假设students.txt中的学生信息为:

小明,1001,男,北京市海淀区
小红,1002,女,北京市朝阳区
static void Main(string[] args)
{
    // 从文件中读取学生信息
    string file = "students.txt";
    StreamReader sr = new StreamReader(file);
    string line;
    while ((line = sr.ReadLine()) != null)
    {
        string[] info = line.Split(",");
        students.Add(new Student { Name = info[0], Id = Convert.ToInt32(info[1]), Gender = info[2], Address = info[3] });
    }
    sr.Close();

    // 进行查询
    List<Student> result = Search("小明");

    if (result.Count == 0) // 判断是否查询到结果
        Console.WriteLine("没有查询到结果!");
    else
        ShowResult(result); // 显示结果
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#实现学生档案查询 - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • C#保存图片到数据库并读取显示图片的方法

    整体思路 将图片转换为二进制,然后将二进制数据存储到数据库中,读取时从数据库中读取二进制数据,再将二进制数据转换为图片。 示范代码1:保存图片到数据库 首先,我们需要创建一个包含二进制数据的表格来存储图片。在该表格上创建两个字段:图片ID和图片内容。然后,使用下面的代码将图片转换为二进制数据,并将其插入到表格中: // 读取图片文件 FileStream f…

    C# 2023年6月2日
    00
  • ASP.NET书籍信息录入实现代码

    下面是ASP.NET书籍信息录入实现代码的完整攻略: 1. 需求分析 首先,我们需要明确网站的需求,即实现书籍信息的录入和展示。对于书籍信息,我们需要记录书名、作者、出版社、发行时间、简介等信息。因此,我们需要建立一个包含这些信息的数据模型,并且需要一个界面来让用户输入这些信息。 2. 数据库设计 接下来,我们需要建立数据库来存储书籍信息。我们可以使用Sql…

    C# 2023年5月31日
    00
  • 深入理解C#中常见的委托

    深入理解C#中常见的委托 委托的定义 委托(Delegate)是一种类型,它可以封装一个方法,使该方法像一个对象实例一样被传递。委托可以像其他任何对象一样进行实例化和调用,其实质是把方法作为参数进行传递和执行。在C#当中,定义委托类型需要使用delegate关键字: delegate void MyDelegate(int param); 以上代码定义了一个…

    C# 2023年5月31日
    00
  • C#中深拷贝和浅拷贝的介绍与用法

    C#中深拷贝和浅拷贝的介绍与用法 什么是拷贝? 在程序设计过程中,我们经常需要对一个对象进行复制操作,这时就需要用到拷贝操作。拷贝操作分为浅拷贝和深拷贝。其中,浅拷贝只是将对象的引用复制了一份,而深拷贝则是将对象的引用以及对象内部所有的引用都复制一遍。 浅拷贝 在C#中,浅拷贝可以通过对象的MemberwiseClone()方法实现。浅拷贝只复制引用,不复制…

    C# 2023年5月31日
    00
  • C#加密解密类实例程序

    以下是详细的“C#加密解密类实例程序”的攻略: 一、概述 在现代信息技术领域,数据加密已经成为很多应用的基本需求。为此,C#提供了一系列的加密解密类,比如MD5、SHA1、DES、AES等等。本文将主要介绍使用C#实现加密解密的方法,其中涉及到的加密算法是DES和AES。 二、加密解密实例 2.1 DES加密解密 DES是一种常用的对称加密算法,下面是一个使…

    C# 2023年5月31日
    00
  • C#语法相比其它语言比较独特的地方(一)

    下面详细讲解一下“C#语法相比其它语言比较独特的地方(一)”的完整攻略。 简介 C#是一种多范式编程语言,由微软公司开发,广泛应用于Windows平台上的应用程序开发。C#语法在设计上融合了C++和Java的特点,并且具有诸多独特的语法和特性。 1、属性(Properties) C#中的属性是一种特殊的方法,用于读取或设置对象中的某个字段的值。有以下三种方式…

    C# 2023年5月31日
    00
  • c#定期删除文件的实操方法

    C#定期删除文件的实操方法 在C#编程中,经常需要对指定目录下的文件进行定期删除,常见的应用场景包括删除系统日志文件、清空临时文件等等。下面就为大家详细讲解C#定期删除文件的实操方法,包含以下几个方面的内容: 获取文件目录 遍历目录中的文件 判断文件是否需要删除 删除文件 1. 获取文件目录 在C#中,我们可以通过使用Directory类来获取指定目录下的所…

    C# 2023年6月1日
    00
  • c#打包文件解压缩的实例

    C#打包文件解压缩的实例攻略 在C#开发过程中,我们经常需要对一些文件进行打包和解压缩。在此分享一下C#打包文件解压缩的实例攻略。 第一步:引用相关命名空间 使用C#进行文件打包与解压缩,需要用到System.IO.Compression和System.IO.Compression.FileSystem两个命名空间。因此,在程序中需要引用这两个命名空间。 u…

    C# 2023年6月1日
    00
合作推广
合作推广
分享本页
返回顶部