关于C#知识讲解中的switch多分支语句、分支嵌套,菜单,猜数吗,模拟蛋仔的游戏

本文主要是介绍关于C#知识讲解中的switch多分支语句、分支嵌套,菜单,猜数吗,模拟蛋仔的游戏,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

以下是一个用C语言中的switch多分支语句、分支嵌套编写的简单菜单程序示例:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _12
{
    internal class Program
    {
        static void Main(string[] args)
        {
            {
                Random random = new Random();
                int targetNumber = random.Next(1, 101);
                int guessCount = 0;
                int guessedNumber = 0;
                Console.WriteLine("\t今日菜谱");
                Console.WriteLine("\t1.红烧排骨");
                Console.WriteLine("\t2.酸菜鱼");
                Console.WriteLine("\t3.板栗鸭");
                Console.WriteLine("\t4.番茄大虾");
                Console.WriteLine("\t5.油闷大虾");
                Console.WriteLine("\t6.素炒青菜");
                Console.WriteLine("\t0.不想点");
                Console.Write("客官今天想吃点什么,请点菜(1-6):");
                int choice = int.Parse(Console.ReadLine());
                switch (choice)
                {

                    case 1:
                        Console.WriteLine("客官点的是:红烧排骨");
                        break;
                    case 2:
                        Console.WriteLine("客官点的是:酸菜鱼");
                        break;
                    case 3:
                        Console.WriteLine("客官点的是:板栗鸭");
                        break;
                    case 4:
                        Console.WriteLine("客官点的是:番茄炒蛋");
                        break;
                    case 5:
                        Console.WriteLine("客官点的是:油闷大虾");
                        break;
                    case 6:
                        Console.WriteLine("客官点的是:素炒青菜");
                        break;
                    case 0:
                        Console.WriteLine("客官慢走,欢迎下次光临");
                        break;
                    default:
                        Console.WriteLine("客官对不起,你点的菜本店没有,欢迎下次光临!");
                        break;
                }
                Console.ReadLine();
            }
        }
    }
}

这个程序会显示一个简单的菜单,然后要求用户输入菜单选项的序号(1-6)。根据用户的选择,在switch语句中执行相应的操作。选项1、2,3,4,5,6仅仅是简单的展示了对应选项的信息。选项0退出程序。

以下是一个用C#语言编写的100以内的猜数字游戏的示例代码:

```csharp
using System;

namespace GuessNumberGame
{
    class Program
    {
        static void Main(string[] args)
        {
            Random random = new Random();
            int targetNumber = random.Next(1, 101);
            int guessCount = 0;
            int guessedNumber = 0;

            Console.WriteLine("猜数字游戏 - 猜一个1到100之间的数字!");

            while (guessedNumber != targetNumber)
            {
                Console.Write("请输入你的猜测:");
                string input = Console.ReadLine();
                if (!int.TryParse(input, out guessedNumber))
                {
                    Console.WriteLine("请输入一个有效的整数!");
                    continue;
                }

                if (guessedNumber < targetNumber)
                {
                    Console.WriteLine("太小了,请继续猜测!");
                }
                else if (guessedNumber > targetNumber)
                {
                    Console.WriteLine("太大了,请继续猜测!");
                }

                guessCount++;
            }

            Console.WriteLine("恭喜你猜对了!");
            Console.WriteLine("你一共猜测了 {0} 次。", guessCount);

            Console.WriteLine("按任意键退出...");
            Console.ReadKey();
        }
    }
}
```

这个游戏会随机生成一个1到100之间的数字,然后要求用户猜测这个数字。如果用户输入的数字比目标数字小,会显示"太小了,请继续猜测!";如果用户输入的数字比目标数字大,会显示"太大了,请继续猜测!"。当用户猜对数字时,会显示"恭喜你猜对了!"并展示用户猜测的次数。

 

你上班的公司做套相当成功的模拟蛋仔的游戏:SimEggs。游戏中会出现各种蛋仔,蛋仔的种类及属性如下:
种类:绿头蛋仔、红头蛋仔、橡皮蛋仔、诱饵蛋仔……不确定什么时候上线新类型蛋仔。
属性:外观、游泳行为、飞行行为、狮吼行为……也不确定新行为。
不同种类的蛋仔所对应的属性如下:
由于不同种类的蛋仔可能具有不同的行为,因此,可以使如何利用多态来实现?
绿头蛋仔:绿头蛋仔的外观、会游泳、会飞行、呱呱叫。
红头蛋仔:红头蛋仔的外观、会游泳、会飞行、呱呱叫。
橡皮蛋仔:橡皮蛋仔的外观、会游泳(漂浮)、不会飞行、吱吱叫。

饵蛋仔:诱饵蛋仔的外观、会游泳(漂浮)、不会飞行、不会叫。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace EggsGame
{/// <summary>/// 你上班的公司做了一套相当成功的模拟蛋仔的游戏:SimEggs。/// 游戏中会出现各种蛋仔,蛋仔的种类及属性如下: 种类:绿头蛋仔、红头蛋仔、橡皮蛋仔、诱饵蛋仔……不确定什么时候上线新类型蛋仔。 /// 属性:外观、游泳行为、飞行行为、狮吼行为……也不确定新行为。 /// 不同种类的蛋仔所对应的属性如下: 由于不同种类的蛋仔可能具有不同的行为,因此,可以使如何利用多态来实现? /// 绿头蛋仔:绿头蛋仔的外观、会游泳、会飞行、呱呱叫。 /// 红头蛋仔:红头蛋仔的外观、会游泳、会飞行、呱呱叫。 /// 橡皮蛋仔:橡皮蛋仔的外观、会游泳(漂浮)、不会飞行、吱吱叫。 /// 诱饵蛋仔:诱饵蛋仔的外观、会游泳(漂浮)、不会飞行、不会叫。///【缺陷】增加一种 翻滚的行为,那么有多少个派生的蛋仔类,就得修改多少次代码,这是很不安全/// </summary>class Program{static void Main(string[] args){Egg greenheadEgg = new GreenHeadEgg();greenheadEgg.Display();greenheadEgg.Fly();greenheadEgg.Swim();greenheadEgg.Sound();Console.WriteLine();Egg rubberEgg = new RubberEgg();rubberEgg.Display();rubberEgg.Fly();rubberEgg.Swim();rubberEgg.Sound();Console.WriteLine();Egg robotEgg = new RobotEgg();robotEgg.Display();robotEgg.Fly();robotEgg.Swim();robotEgg.Sound();Console.ReadKey();}}
}

namespace EggsGame
{public abstract class Egg{// 蛋仔的名称public string EggName { get; set; }public void Display(){Console.WriteLine($"名称:{EggName}");}// 行为: 游泳  飞   叫public abstract void Swim();public abstract void Fly();public abstract void Sound();}
}

namespace EggsGame
{public class GreenHeadEgg : Egg{public GreenHeadEgg(){EggName = "绿头蛋仔";}public override void Fly(){Console.WriteLine("用翅膀飞");}public override void Sound(){Console.WriteLine("呱呱叫");}public override void Swim(){Console.WriteLine("用脚来游");}}
}

namespace EggsGame
{public class RobotEgg : Egg{public RobotEgg(){EggName = "机器蛋仔";}public override void Fly(){Console.WriteLine("喷气式引擎起飞");}public override void Sound(){Console.WriteLine("嗡……");}public override void Swim(){Console.WriteLine("用螺旋桨游");}}
}

namespace EggsGame
{public class RubberEgg : Egg{public RubberEgg(){EggName = "橡皮蛋仔";}public override void Fly(){Console.WriteLine("不会飞");}public override void Sound(){Console.WriteLine("……");}public override void Swim(){Console.WriteLine("漂浮");}}
}

这篇关于关于C#知识讲解中的switch多分支语句、分支嵌套,菜单,猜数吗,模拟蛋仔的游戏的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/366804

相关文章

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

grom设置全局日志实现执行并打印sql语句

《grom设置全局日志实现执行并打印sql语句》本文主要介绍了grom设置全局日志实现执行并打印sql语句,包括设置日志级别、实现自定义Logger接口以及如何使用GORM的默认logger,通过这些... 目录gorm中的自定义日志gorm中日志的其他操作日志级别Debug自定义 Loggergorm中的

C# string转unicode字符的实现

《C#string转unicode字符的实现》本文主要介绍了C#string转unicode字符的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录1. 获取字符串中每个字符的 Unicode 值示例代码:输出:2. 将 Unicode 值格式化

Java集合中的List超详细讲解

《Java集合中的List超详细讲解》本文详细介绍了Java集合框架中的List接口,包括其在集合中的位置、继承体系、常用操作和代码示例,以及不同实现类(如ArrayList、LinkedList和V... 目录一,List的继承体系二,List的常用操作及代码示例1,创建List实例2,增加元素3,访问元

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

C#中读取XML文件的四种常用方法

《C#中读取XML文件的四种常用方法》Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具,下面我们就来看看C#中读取XML文件的方法都有哪些吧... 目录XML简介格式C#读取XML文件方法使用XmlDocument使用XmlTextReader/XmlTextWr

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

C#比较两个List集合内容是否相同的几种方法

《C#比较两个List集合内容是否相同的几种方法》本文详细介绍了在C#中比较两个List集合内容是否相同的方法,包括非自定义类和自定义类的元素比较,对于非自定义类,可以使用SequenceEqual、... 目录 一、非自定义类的元素比较1. 使用 SequenceEqual 方法(顺序和内容都相等)2.

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep