C#基础 结构体 枚举类型

结构体:就是一个自定义的集合,里面可以放各种类型的元素,用法大体跟集合一样。

一、定义的例子:

struct student

{

public int nianling;

public int fenshu;

public string name;

public string sex;

public int sum;

}

以上的语句就是定义一个名称为student的结构体,其中包含int类型的年龄、分数、总和,和string类型的姓名、性别。

二、用法:

在main主函数外面定义了一个名称为student的结构体,以便于main函数之中使用。

student st = new student();//这句话是在main函数之中定义了一个名为st的student类型的结构体。

下面开始为里面的每个元素赋值:(结构体名+点+结构体里面的变量名称=值)

main函数下

{

st.nianling=22;

st.fenshu=80;

st.name="小李";

}

赋值完成之后可以打印出被赋值的项。

三、结构体类型里面包含结构体类型:

可以在此前的student的结构体中在定义一个结构体

public shuxing sx;//代表一个shuxing结构体变量组
}
public struct shuxing
{
public double tizhong;
public double shengao;
public int nianling;
public string hunfou;
}

这样就可以在用的时候省下再次初始化结构体。

//struct jiegouti
//{
// public string name;
// public string kecheng;
// public Fen fenshu;
//}
//struct Fen
//{
// public double yufen;
// public double shufen;
// public double yingfen;
//}

//等号,在枚举类型中的意思
//指向某个索引号
enum meiju :int
{
one=1,
two=0,
three,
//若等于之前出现的一个常量,那么会将这个常量直接拿过来
four
}

struct student//创建一个学生的结构体
{
public int code;//学号
public string name;//姓名
public double score;//分数
}

static void Main(string[] args)
{
ArrayList al = new ArrayList();//初始化集合
Console.Write("请输入班级人数:");
int n = int.Parse(Console.ReadLine());
for (int i = 0; i < n; i++)
{
student st = new student();//初始化结构体
Console.Write("请输入第{0}个学生的学号:",i+1);
st.code = int.Parse(Console.ReadLine());
Console.Write("请输入他/她的姓名:");
st.name = Console.ReadLine();
Console.Write("请输入他/她的分数:");
st.score = double.Parse( Console.ReadLine());
al.Add(st);//将st这个结构体对象添加进al集合里面
}

Console.WriteLine("所有人员信息输入完毕!请按回车键查看!");
Console.ReadLine();

//Console.WriteLine(al[0]);
for (int i = 0; i < n; i++)
{
student st = (student)al[i];
Console.WriteLine("第{0}个学生的学号是{1},姓名是{2},成绩是{3}", i + 1, st.code, st.name, st.score);
}

Console.ReadLine();

// Console.WriteLine((int)meiju.one);
// Console.WriteLine((int)meiju.two);
// Console.WriteLine((int)meiju.three);
// Console.WriteLine((int)meiju.four);
// Console.ReadLine();

////结构体初始化
// jiegouti jgt = new jiegouti();

// jgt.name = "张三";
// jgt.kecheng = "语文";
// //jgt.fenshu = 99;
// jgt.fenshu.yufen=55;
// jgt.fenshu.shufen = 88;
// jgt.fenshu.yingfen = 99;

//jiegouti jgt2 = new jiegouti();

时间: 2024-10-07 06:46:15

C#基础 结构体 枚举类型的相关文章

OC基础--结构体 枚举做类成员属性

结构体  枚举作类的成员属性: 定义一个学生类 性别 -- 枚举 生日 入学日期  毕业日期  --  结构体 代码示例: 声明文件 Student.h: #import <Foundation/Foundation.h> typedef struct { int year; int month; int day; } Date; typedef enum { kGenderGirl = 0, kGenderBoy = 1, kGenderChunGe = 2 } Gender; @inter

结构体 枚举类型

结构体 class Program { struct student { public int num; public string name; public string sex; public one oone; public int[] qq; } struct one { public string aa; public int bb; } static void Main(string[] args) { ////struct ////初始化结构体 //student stu = ne

C# 结构体 枚举类型

结构体主要用于创建小型对象,例如   对象:学生  他包含:学号 姓名  性别  生日 班级   成绩等多个再小的对象 当我们有成千上万个对象组合起来   容易会自己造成混乱 而且占一定的内存 结构体就是把一个对象分支多个对象  组合起来进行计算 运行  并且不会重复运用同一个程序  把内存节省 定义: 它一般定义在Main函数外面,类Class program里面 格式: struct+结构体名称 { public   int 变量名; public   string   变量名; publi

结构体枚举类型

结构体 结构体类型是用户自己定义的一种类型,它是由其他类型组合而成的,可包含构造函数.常数.字段.方法.属性.索引器.运算符.事件和嵌套类型的值类型.结构在几个重要方面不同于类:结构为值类型而不是引用类型,并且结构不支持继承. 用结构的主要思想是创建小型的对象,如Point和FileInfo等等.这可以节省内存,因为没有如类对象所需的那样有额外的引用产生.例如,当声明汉语成千上万个对象的数组时,这会引起极大的差异. 结构体是一个变量组,将一组变量放在一起,其实就是一个自定义的集合,里面可以包含各

2016.8.3 C#基础 结构体,枚举类型

结构体-枚举类型 一.枚举类型 枚举(enum)是值类型的一种特殊形式,它从System.Enum继承而来,并为基础类型的值提供替代名称.枚举类型有名称.基础类型和一组字段.基础类型必须是一个除char 类型外的内置的有符号(或无符号)整数类型(如Byte.Int32或UInt64).也可以说,枚举类型是一组常量的集合. 1.定义:Enum....{E} 枚举元素的默认基础类型为int.默认情况下,第一个枚举数的值为0,后面每个枚举数的值依次递增1.例如: enum meiju://枚举是常量的

黑马程序员---C语言基础---结构体

------iOS培训.Java培训.Android培训, iOS学习型技术博客,期待与您交流------ C语言基础---结构体 一.什么是结构体 介绍结构体之前,我想先简单介绍下数组.我想大家对数组都再熟悉不过了,顾名思义,数组就是将一些数据(元素)组合在一起,作为一个整体.使用数组需要注意的是这些元素必须是相同类型.而结构体和数组类似,也是将一些数据组合在一起作为一个整体,但是这些元素可以是不同类型.可以这么理解:结构体是更加灵活的数组,因为它允许元素是不同的类型. 实际生活中,如果我们要

关于C/C++结构体参数类型定义冲突

1.对于纯C程序调用纯C编译的动态库: 可直接在纯C程序包含的头文件中修改结构体参数类型名称.编译器不会有任何警告或者错误,并且可正常调用. 2.对于C++程序调用C++编译的动态库: 必须C++程序和C++动态库都使用extern "C"包含,方可以任意修改结构体参数类型名称.编译器不会有任何警告或者错误,并且可正常调用. 总结:只有当使用C语言方式编译相互调用时,可以任意修改结构体参数类型名称.

Java基础教程:枚举类型

Java基础教程:枚举类型 枚举类型 枚举是将一具有类似特性的值归纳在一起的方法.比如,我们可以将周一到周日设计为一个枚举类型.彩虹的七种颜色设计为一个枚举类型. 常量实现枚举 我们通过定义常量的方式来实现,如下: Public static class RainbowColor { // 红橙黄绿青蓝紫七种颜色的常量定义 public static final int RED = 0; public static final int ORANGE = 1; public static fina

C#语言基础——结构体和枚举类型

结构体和枚举类型 一.结构体(struct) 结构类型是用户自己定义的一种类型,它是由其他类型组合而成的,可包含构造函数.常数.字段.方法.属性.索引器.运算符.事件和嵌套类型的值类型.结构在几个重要方面不同于类:结构为值类型而不是引用类型,并且结构不支持继承. 用结构的主要思想是用于创建小型的对象,如Point和FileInfo等等.这可以节省内存,因为没有如类对象所需的那样有额外的引用产生.例如,当声明含有成千上万个对象的数组时,这会引起极大的差异. 结构体是一个变量组,将一组变量放在一起,