打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
c# 结构体

结构体:相当于是我们自己定义的一种复杂的类型。
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?"男":"女"));

对战游戏

struct Ren
{public string Name;public int Blood;public int Attack;public int Defend;


}class Class4
{static void Main(string[] args)
{
Ren r1=new Ren();
Ren r2=new Ren();
Console .Write ("请第一个高手出场:");
r1.Name =Console .ReadLine ();
Console .Write ("请第二个高手出场:");
r2.Name =Console .ReadLine ();//生成血量Random rand=new Random ();
r1.Blood =rand.Next (1000)+1000;
r2.Blood =rand.Next (1000)+1000;//攻防r1.Attack = rand.Next(50)+50;
r2.Attack = rand.Next(50) + 50;
r1.Defend = rand.Next(50)+50;
r2.Defend = rand.Next(50) + 50;
Console .WriteLine ("大侠"+r1.Name +"\t,生命力"+r1.Blood );
Console .WriteLine ("大侠"+r2.Name +"\t,生命力"+r2.Blood );
Console .WriteLine ("在一个月黑风高的夜晚狭路相逢!");while (true)
{//跳出循环if(r1.Blood <=0&&r2.Blood <=0)
{
Console .WriteLine (r1.Name +"与"+r2.Name+"皆倾尽全力,共赴黄泉" );break;
}if(r1.Blood <=0)
{
Console .WriteLine (r2.Name +"用了一记猴子捞月,结束了"+r1.Name +"的生命");break;
}if(r2.Blood <=0)
{
Console .WriteLine (r1.Name +"用了一记黑虎掏心,结束了"+r2.Name +"的生命");break;
}//对战int b1=rand.Next (200);//r1掉的血r1.Blood -=b1;if(r1.Blood <0)
{
r1.Blood =0;
}
System.Threading.Thread.Sleep(1000);
Console.ForegroundColor = ConsoleColor.Red;
Console .WriteLine (r2.Name +"抡起拳头打了"+r1.Name+b1+"点血");
Console.ResetColor();
Console.WriteLine();//稍等一下System.Threading.Thread.Sleep(1500);int b2=rand.Next (200);//r2掉的血r2.Blood -=b2;if(r2.Blood <0)
{
r2.Blood =0;
}
Console.ForegroundColor = ConsoleColor.DarkCyan;
Console .WriteLine (r1.Name +"抡起拳头打了"+r2.Name+b2+"点血");
Console.ResetColor();


Console.ForegroundColor = ConsoleColor.Yellow;
Console .WriteLine("大侠"+r1.Name +"还有"+r1.Blood +"生命力!");
Console .Write("大侠"+r2.Name +"还有"+r2.Blood +"生命力!");
Console.ResetColor();
Console.WriteLine();
Console.WriteLine();

}


}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
(教学思路 C#之类四)构造方法(静态构造方法、this、方法重载)、析构方法(修改新增)...
C#基础知识简单梳理
C#接口
C#中ref和out的使用小结
随机数是骗人的,.Net、Java、C为我作证
C# 自定义格式化字符串Console.WriteLine,Console....
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服