C#9 结构体 员工信息 学生成绩

结构体:相当于是我们自己定义的一种复杂的类型。

int...  double float bool char string  DateTime  数组类型

生活中大部份的对象都是复合型的对象。

如何定义结构体类型?

一般来说结构体的定义要放在class的外面或class的里面,尽量不放在Main的里面。

struct 自定义类型名

{

public 变量类型  变量名;  ......;  ......;  ......;

}

例如:

struct YuanGong  //自定义的数据类型。用来描述员工的信息。

{

public string NO;

public string Name;

public int Age;

public string Nation;

public bool Sex;

}

如何用自定义的类型来定义变量? 自定义类型名 变量 = new 自定义类型名();

如何使用自定义类型的变量?

变量.子变量 = "xxxx"; Console.WriteLine(变量名.子变量);

例如:

//定义自定义类型的变量

YuanGong zhangsan = new YuanGong();

//给变量赋值

zhangsan.NO = "Y001";

zhangsan.Name = "张三";

zhangsan.Age = 22;

zhangsan.Sex = true;

zhangsan.Nation = "汉族";

//对变量取值

Console.WriteLine(zhangsan.NO+"\t"+zhangsan.Name+"\t"+zhangsan.Age);

Console.WriteLine(zhangsan.Nation+"\t"+(zhangsan.Sex?"男":"女"));

例1:

struct YuanGong  //自定义的数据类型。用来描述员工的信息。

{

public string NO;

public string Name;

public int Age;

public string Nation;

public bool Sex;

public LianXiFangShi LianXi;

}

struct LianXiFangShi

{

public string QQ;

public string WeiXin;

public string Email;

public string Telephone;

public string Address;

public string ZipCode;

}

class Program

{

static void Mai0n(string[] args)

{

YuanGong zhangsan = new YuanGong();

zhangsan.NO = "Y001";

zhangsan.Name = "张三";

zhangsan.Age = 22;

zhangsan.Sex = true;

zhangsan.Nation = "汉族";

zhangsan.LianXi.QQ = "434354546";

//zhangsan.LianXi.WeiXin = "张三三";

//zhangsan.LianXi.Email = "[email protected]";

zhangsan.LianXi.Address = "张店区张家胡同";

zhangsan.LianXi.ZipCode = "25000";

zhangsan.LianXi.Telephone = "";

YuanGong lisi = new YuanGong();

lisi.NO = "Y002";

lisi.Name = "李四";

lisi.Age = 25;

lisi.Sex =false;

lisi.Nation = "回族";

Console.WriteLine("**********张三的个人信息***********");

Console.WriteLine(zhangsan.NO+"\t"+zhangsan.Name+"\t"+zhangsan.Age);

Console.WriteLine(zhangsan.Nation+"\t"+(zhangsan.Sex?"男":"女"));

Console.WriteLine("联系方式:");

Console.WriteLine(

"QQ:"+(zhangsan.LianXi.QQ==null?"无":zhangsan.LianXi.QQ)+"\t"

+"微信:"+(zhangsan.LianXi.WeiXin == null?"无":zhangsan.LianXi.WeiXin)+"\t"

+"手机:"+(zhangsan.LianXi.Telephone==null?"无":zhangsan.LianXi.Telephone)+"\t"

+"邮箱:"+(zhangsan.LianXi.Email==null?"无":zhangsan.LianXi.Email)+"\t"

+"地址:"+zhangsan.LianXi.Address+"\t"+zhangsan.LianXi.ZipCode);

}

}

例2:

struct XueSheng

{

public int XueHao;

public string XingMing;

public double YuWen;

public double ShuXue;

public double WaiYu;

public double ZongFen;

public int MinCi;

}

class Class1

{

static void Mai1n(string[] args)

{

//int[] a = new int[5];

XueSheng[] s = new XueSheng[5];

//输入

ShuRu(s);

//排序

PaiXu(s);

//填名次

XieMingCi(s);

//输出显示

ShuChu(s);

}

private static void ShuChu(XueSheng[] s)

{

for (int i = 0; i < s.Length; i++)

{

Console.WriteLine(s[i].XueHao + "\t" + s[i].XingMing + "\t" + s[i].YuWen + "\t" + s[i].ShuXue + "\t"

+ s[i].WaiYu + "\t" + s[i].ZongFen + "\t" + s[i].MinCi);

}

}

private static void XieMingCi(XueSheng[] s)

{

for (int i = 0; i < s.Length; i++)

{

s[i].MinCi = i + 1;

}

}

private static void PaiXu(XueSheng[] s)

{

for (int i = 1; i <= s.Length - 1; i++)

{

for (int j = 1; j <= s.Length - i; j++)

{

if (s[j].ZongFen > s[j - 1].ZongFen)

{

XueSheng temp = s[j];

s[j] = s[j - 1];

s[j - 1] = temp;

}

}

}

}

private static void ShuRu(XueSheng[] s)

{

for (int i = 0; i < s.Length; i++)

{

Console.WriteLine("正在输入第" + (i + 1) + "个学生的信息");

s[i].XueHao = i + 1;

Console.Write("姓名:");

s[i].XingMing = Console.ReadLine();

Console.Write("语文:");

s[i].YuWen = Convert.ToDouble(Console.ReadLine());

Console.Write("数学:");

s[i].ShuXue = Convert.ToDouble(Console.ReadLine());

Console.Write("外语:");

s[i].WaiYu = Convert.ToDouble(Console.ReadLine());

//总分:

s[i].ZongFen = s[i].YuWen + s[i].ShuXue + s[i].WaiYu;

}

}

}

时间: 2024-11-15 20:57:07

C#9 结构体 员工信息 学生成绩的相关文章

结构体案例之学生成绩输入及排序

class Program { struct Student { public string name; public int age; public double Cshap; public double Database; public double Html; public double sum; } static void Main(string[] args) { Console.WriteLine("请输入学生的个数:"); int a = Convert.ToInt32(

c语言:用结构体变量输出学生的信息,包括学号,姓名,性别。

用结构体变量输出学生的信息,包括学号,姓名,性别. 解:程序: #include<stdio.h> int main() { struct Student { long int num; char name[20]; char sex[5]; char addr[20]; }a = {1010,"yaoyao","Man","xi'an"};//定义结构体变量a并初始化 printf("num:%ld\nname:%s\ns

使用结构体变量存储学生姓名和课程成绩,计算平均分及查找不及格同学姓名及分数

1 struct Student //声明Student类型结构体变量 2 { 3 char name[20]; 4 int score[5]; 5 }; 6 typedef struct Student Stu; 7 8 void main() 9 { 10 11 Stu stu[3]; 定义Student类型变量数组 12 int i,j; 13 for(i=0;i<3;i++) //输入学生姓名和成绩 14 { 15 printf("please input student[%d]'

【C项目】 文件,结构体,链表,排序, 学生信息管理系统

1.密码登录: 2.通过键盘输入学生信息,包括学生学号.姓名.成绩: 3.将输入的信息保存到指定文件中: 4.从文件中读取学生信息: 5.显示全部学生信息: 6.按学生总分进行降序排序: 7.删除学生信息: 8.查找学生信息,可以通过学号查找,也可以通过姓名查找: 9.统计学生信息,统计出最高分和学生人数: 10.退出系统: 源代码: [email protected]:~$ cat main.c  #include<stdio.h> #include<stdlib.h> #inc

C# 定义一个学生的结构体,输入学生信息,学号,姓名,身高,按身高排序输出

class Program { //定义一个结构体 struct student//student就是我们自己造的新数据类型 { public int code;//public修饰符 public string name;//结构体的成员 public decimal height; } static void Main(string[] args) { ArrayList arr = new ArrayList(); for (int i = 0; i < 3; i++) { student

C语言:SWUST OJ,程序设计C 实验六 结构体 题目三 学生结构体链表(0068)

Description: 用结构体建立学生信息,学生信息包括学号.姓名.成绩,建立一个有 n 名学生的链表, 并将链表输出. Input: 一次输入学生信息包括学号.姓名.0 0 0结束程序. Sample Input: C1001 Li 70 M1002 He 89 E1003 Xie 83 M1004 Wu 92 E1005 Bao 80 Sample Output: C1001 Li 70 M1002 He 89 E1003 Xie 83 M1004 Wu 92 E1005 Bao 80

利用结构体计算每个学生的4门课程的平均分,将各科成绩及平均分输出到score.txt中

#include "stdafx.h" #include <stdlib.h> #include <stdio.h> typedef struct date { int year; int month; int day; }DATE; typedef struct student { long studentID; char studentName[20]; char studentSex; DATE birthday; int score[4]; }STUDE

C语言学生成绩管理系统分享

设计一个学生成绩管理系统,对上学期的本班的学习成绩进行管理,具有查询和检索功能,并且能够对指定文件操作,也可将多个文件组成一个文件 . A . 设计内容 1 .每一条记录包括一个学生的学号.姓名.性别.各门课成绩(上学期的科目).平均成绩. 2 .输入功能:可以一次完成若干条记录的输入. 3 .显示功能:完成全部学生记录的显示. 4 .查找功能:完成按姓名或学号查找学生记录,并显示. 5 .排序功能:按学生平均成绩进行排序. 6 .插入功能:按 学号顺序插入 一条学生记录. 7 .将学生记录存在

C语言--&gt;(十四)结构体、宏、编译

知识点: 1.结构体 struct 2.typedef关键字 3.宏的定义 4.宏与函数的区别 5.文件包含和多文件编译 6.条件编译 ===========================结构体 思考:如果现在希望保存一个学生的信息,姓名,身高,年龄,地址,该如何保存 char name[64]; float height; int age; char addr[64]; 1.什么是结构体 struct 结构体指的是一种数据结构,是c语言中复合数据类型的一 种多种不同数据类型的集合 2.结构体