CSharp基础
主要学习内容:
复杂数据类型(枚举,数组,结构体)
值和引用的区别
排序初探
复杂数据类型(枚举):
Lesson1:枚举
练习
练习三:
/// <summary>
/// 性别枚举
/// </summary>
enum E_Sex
{
Man,
Woman,
}
enum E_Occupation
{
/// <summary>
/// 战士
/// </summary>
Warrior,
/// <summary>
/// 猎人
/// </summary>
Hunter,
/// <summary>
/// 法师
/// </summary>
Master,
}
#region 练习三
//请用户选择英雄性别与英雄职业,最后打印英雄的基本属性(攻击力,防御力,技能)
//性别:
//男 (攻击力 + 50,防御力 + 100)
//女 (攻击力 + 150,防御力 + 20)
//职业:
//战士(攻击力 + 20,防御力 + 100,技能:冲锋)
//猎人(攻击力 + 120,防御力 + 30,技能:假死)
//法师(攻击力 + 200,防御力 + 10,技能:奥术冲击)
//举例打印:你选择了“女性法师”,攻击力:350,防御力:30,职业技能:奥术冲击
try
{
Console.WriteLine("请输入性别:(男0 女1)");
E_Sex sex = (E_Sex)int.Parse(Console.ReadLine());
string sexStr = "";
int atk = 0;
int def = 0;
switch (sex)
{
case E_Sex.Man:
sexStr = "男";
atk = 50;
def = 100;
break;
case E_Sex.Woman:
sexStr = "女";
atk = 150;
def = 20;
break;
}
Console.WriteLine("请输入职业:(战士0 猎人1 法师2)");
E_Occupation occupation = (E_Occupation)int.Parse(Console.ReadLine());
string skill = "";
string occupation1 = "";
switch (occupation)
{
case E_Occupation.Warrior:
occupation1 = "战士";
atk += 20;
def += 100;
skill = "冲锋";
break;
case E_Occupation.Hunter:
occupation1 = "猎人";
atk += 120;
def += 30;
skill = "假死";
break;
case E_Occupation.Master:
occupation1 = "法师";
atk += 200;
def += 10;
skill = "奥术冲击";
break;
default:
break;
}
Console.WriteLine("你选择了\"{0}性{1}\",攻击力:{2},防御力:{3},职业技能:{4}",
sex,occupation1,atk,def,skill);
}
catch
{
Console.WriteLine("请输入数字");
}
#endregion
复杂数据类型(数组):
Lesson2:数组 -- 一维数组
练习:
Lesson3:数组 -- 二维数组
练习:
Lesson4:数组 -- 交错数组
值类型和引用类型
Lesson5:值类型和引用类型
Lesson6:特殊引用类型string
函数
Lesson7:函数
Lesson8:ref和out
练习:
Lesson9:变长参数和参数默认值
练习
Lesson10:函数重载
练习:
Lesson11:递归函数
递归:实践运用不多,但面试常考