T02B C#语言基础.doc
文本预览下载声明
第二讲 C#语言基础
3 值类型与引用类型
3.1 值类型Struct
利用前面所介绍的简单数据类型,我们已经可以用C#进行数学计算和输出字符了。但是有时候简单类型并不够用,例如:如果我们想表示一个分数,它由分子和分母组成,而我们希望把它们作业一个整体来看待。这时,就需要结构,如下:
这个结构Fraction包括分子和分母,而且他们被放在一起作为一个整体。public是一个访问修饰符,表示任何人都可以访问分子和分母。程序如下:
namespace T0206_结构类型的表示
{
// 首先定义一个结构类型
struct Fraction
{
public int numerator; // 分子
public int denominator; // 分母
}
class Program
{
static void Main(string[] args)
{
Fraction x; // 定义结构变量x
x.numerator = 1;
x.denominator = 2;
Fraction y = x; // 定义结构变量y
Console.WriteLine(x = {0}/{1}, x.numerator, x.denominator);
Console.WriteLine(y = {0}/{1}, y.numerator, y.denominator);
x.numerator = 3;
y.denominator = 3;
Console.WriteLine(x = {0}/{1}, x.numerator, x.denominator);
Console.WriteLine(y = {0}/{1}, y.numerator, y.denominator);
Console.ReadLine();
}
}
}
运行结果:
说明:一个分子中还可以包括另一个分数,这样就构成了繁分数。看下面的程序和运行结果。
namespace T0207_结构类型_繁分数_的表示
{
// 首先定义一个结构类型
struct Fraction
{
public int numerator; // 分子
public int denominator; // 分母
}
// 再定义一个繁分数结构类型
struct ComplexFraction
{
public Fraction numerator; // 分子为一个结构类型
public int denominator;
}
class Program
{
static void Main(string[] args)
{
ComplexFraction x;
x.numerator.numerator = 1; // x的分子
x.numerator.denominator = 2;
x.denominator = 3; // x的分母
Console.WriteLine(x = {0}/{1} / {2}, x.numerator.numerator,
x.numerator.denominator, x.denominator);
Console.ReadLine();
}
}
}
运行结果:
3.2 引用类型Class
除了结构struct之外,类class也可以用来定义复杂类型。下面的程序类似于【T0206_结构类型的表示namespace T0208_类类型的表示
{
// 首先定义一个结构类型
class Fraction
{
public int numerator; // 分子
public int denominator; // 分母
}
class Pro
显示全部