开发魔法师迷你游戏平台
[if !supportLists]一、 [endif]任务描述
现要开发一款魔法师迷你游戏平台,主要功能如下
[if !supportLists](1) . [endif]用户可以进入游戏平台并选择喜爱的游戏。
[if !supportLists](2) . [endif]用户可以玩游戏并晋级
[if !supportLists](3) . [endif]游戏结束后,用户支付游戏币
[if !supportLists](4) . [endif]统计不同游戏的点击率
[if !supportLists](5) . [endif]循环录入用户信息
以上需要,我们可以通过分阶段来完成
[if !supportLists]二、 [endif]练习一:选择游戏
[if !supportLists](一) [endif]需求说明
用户进入游戏平台后,可以选择喜爱的游戏,程序运行结果如下:
[if !vml]
[endif]
[if !supportLists](二) [endif]提示
使用switch选择结构
[if !supportLists](三) [endif]参考代码
Console.WriteLine("欢迎进入魔法师迷你游戏平台");
Console.WriteLine("请选择您喜爱的游戏:");
Console.WriteLine("****************************************");
Console.WriteLine(@"
1.斗地主
2.斗牛
3.泡泡龙
4.连连看");
Console.WriteLine("****************************************");
Console.Write("请选择:");
string str_num = Console.ReadLine();
try
{
int num = Convert.ToInt32(str_num);
switch(num)
{
case1:
Console.WriteLine("您已进入斗地主房间");
break;
case2:
Console.WriteLine("您已进入斗牛房间");
break;
case3:
Console.WriteLine("您已进入泡泡龙房间");
break;
case4:
Console.WriteLine("您已进入连连看房间");
break;
}
}
catch
{
Console.WriteLine("你输入的是非数字,程序退出,请重新运行程序");
}
Console.ReadKey();
[if !supportLists]三、 [endif]练习二:玩游戏并晋级
[if !supportLists](一) [endif]需求说明
用户玩游戏,每次玩5局,晋级标准如下
[if !supportLists](1) . [endif]每次玩游戏不足5局,则不能晋级
[if !supportLists](2) . [endif]在5局游戏中,如果80%达到80分以上,则为一级;如果60%达到80分以上,则为二级,否则不能晋级。
[if !vml]
[endif][if !vml]
[endif]
[if !supportLists](二) [endif]提示
[if !supportLists]1. [endif]使用循环实现玩5局,使用break语句实现中途退出游戏。
do
{
Console.Write("您正在玩第{0}局,成绩为:", n);
string str_score = Console.ReadLine();
int score = Convert.ToInt32(str_score);
if(score > 80)
{
count++;
}
n++;
if(n > 5)
{
Console.WriteLine("游戏结束");
}else
{
Console.Write("\n继续玩下一局吗?(yes/no)");
answer =Console.ReadLine();
if ("no"== answer)
{
Console.Write("\n您已经中途退出程序了");
break;
}else
{
Console.WriteLine("进入一局");
}
}
}while (n <= 5);
[if !supportLists]2. [endif]使用多重if选择结构,根据游戏的得分判断是否晋级
doublerate = count / 5.0; // 计算达到80分以上的比率
if(n> 5)
{
if(rate > 0.8)
{
Console.WriteLine("恭喜,通过一级");
}else if(rate > 0.6)
{
Console.WriteLine("通过二级");
}else
{
Console.WriteLine("\n对不起,你未能晋级,继续加油吧~");
}
}else
{
Console.WriteLine("对不起,你没有完成游戏,不能晋级,继续加油努力");
}
[if !supportLists]四、 [endif]练习三:玩游戏并支付游戏币
[if !supportLists](一) [endif]需求
[if !supportLists](1) . [endif]根据游戏类型和游戏时长计算应付的游戏币
[if !supportLists](2) . [endif]游戏类型分为牌类和休闲竞技类两大类
[if !supportLists](3) . [endif]游戏的收费标准如下:
[if !supportLists]a) [endif]牌类:10元/小时
[if !supportLists]b) [endif]休闲竞技类:20元/小时
[if !supportLists](4) . [endif]游戏的收费规则如下:游戏时间超过10个小时,打5折;10小时及以下,打8折。
程序运行结果如下图所示:
[if !vml]
[endif]
[if !supportLists](二) [endif]提示
[if !supportLists]1. [endif]使用switch选择结构判断游戏类型
[if !supportLists]2. [endif]使用if-else选择结构游戏时长判断折扣
[if !supportLists]五、 [endif]练习四:统计游戏点击率
[if !supportLists](一) [endif]需求
录入游戏的点击率,统计点击率超过100的游戏所占的比例。程序运行结果如下图所示
[if !vml]
[endif]
[if !supportLists](二) [endif]提示
使用循环结构录入所有游戏的点击率,并使用if选择结构统计点击率在100以上的游戏的比例。
[if !supportLists]六、 [endif]练习五:添加用户信息
[if !supportLists](一) [endif]需求
为了维护用户信息,需要将其信息录入系统,具体要求如下:
[if !supportLists](1) . [endif]循环录入用户的信息,包括用户编号、年龄、积分
[if !supportLists](2) . [endif]判断年龄是否合法,要求用户必须满10周岁以上。若年龄合法,则显示录入信息,否则显示录入失败
程序运行结果如下:
[if !vml]
[endif]
[if !supportLists](二) [endif]提示
使用循环结构录入用户信息,并使用if选择结构和continue语句判断录入的年龄信息是否合法