前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 ># C#学习-关系运算符-逻辑运算符-if-switch

# C#学习-关系运算符-逻辑运算符-if-switch

作者头像
呆呆敲代码的小Y
发布2021-08-12 11:04:42
3690
发布2021-08-12 11:04:42
举报
文章被收录于专栏:呆呆敲代码的小Y 公众号

关系运算符

作用:描述前后表达式之间的大小关系,关系运算符的结果一定是一个bool类型

在这里插入图片描述
在这里插入图片描述

逻辑运算符

作用:描述前后表达式之间的逻辑关系,逻辑运算符的结果一定是一个bool类型

在这里插入图片描述
在这里插入图片描述

if语句

C#程序的三大结构 顺序结构:程序的入口都是Main函数,代码从上往下,从左往右,依次执行; 分支结构:当我们的程序执行到某个位置的时候,进行条件判断,根据判断的结果来执行不同的操作; 循环结构:在满足某个条件的时候反复执行一个语句序列(循环)。 *

其中if语句属于分支结构中的语句*

if语句的第一种形式

代码语言:javascript
复制
if(条件表达式){
语句1;
} 

当条件表达式为真,执行大阔号中的所有语句(语句1),否则,跳过大括号中的所有语句,继续执行大括号后面的语句。

if语句的第二种形式

代码语言:javascript
复制
if (条件表达式){ 
   语句1;}
else{ 
   语句2;
} 

当条件表达式为真,执行if大阔号中的所有语句(语句1),否则,执行else大括号中的所有语句(语句2)。

if语句的第三种形式(级联式)

代码语言:javascript
复制
if (条件表达式1){    
语句1;
}
else if 
(条件表达式2){    
语句2;
}
else
{ 语句3;
} 

如果条件表达式1为真,执行语句1,如果条件表达式1为假,条件表达式2为真,执行语句2,如果条件表达式1与条件表达式2都为假,执行语句3;

练习 1.从控制台输入两个整数,并输出两个数中的最大值。

代码语言:javascript
复制
                    string a = Console.ReadLine();
                    string b = Console.ReadLine();
                    int numb1 = Convert.ToInt32(a);
                    int numb2 = Convert.ToInt32(b);

                    if (numb1 > numb2){
                        Console.WriteLine(numb1);
                    }
                    else{
                        Console.WriteLine(numb2);
                    }

2.从控制台输入两个小数,并输出两个数中的最小值。

代码语言:javascript
复制
 float c, d;
                    c = float.Parse(Console.ReadLine());
                    d = float.Parse(Console.ReadLine());
                    if (c<d) {
                        Console.WriteLine(c);
                    }
                    else
                    {
                        Console.WriteLine(d);
                    }

3.输入一个年份,判断该年份是否是闰年?如果是闰年,则输出该年是闰年,否则输出该年不是闰年。 闰年:能被400整除或者(能被4整除,但是不能被100整除)。

代码语言:javascript
复制
int a;
            Console.WriteLine("请输入一个年份来判断是否为闰年");
            a = Convert.ToInt32(Console.ReadLine());
            if (a%400==0 && a%4==0 && a%100!=0)
            {
                Console.WriteLine("该年为闰年");
            }
            else
            {
                Console.WriteLine("该年不是闰年");
            }

4.从键盘输入一个月份,如果是3-5,输出春季,如果是6-8,输出夏季,如果是9-11,输出秋季,如果是12-2,输出冬季。

代码语言:javascript
复制
  int a;
            Console.WriteLine("请输入一个月份");
            a = Convert.ToInt32(Console.ReadLine());
            switch (a)
            {
                case 3:
                case 4:
                case 5:Console.WriteLine("该月份为春天");
                    break;
                case 7:
                case 8:
                case 6: Console.WriteLine("该月份为夏天");
                    break;
                case 9:
                case 10:
                case 11: Console.WriteLine("该月份为秋季");
                    break;
                default:
                    Console.WriteLine("该月份为冬季");
                    break;
            }

三目运算符

语法描述:布尔类型 ? 结果a : 结果b 结果:如果前面布尔类型为true,则结果为结果a,否则结果为结果b 举例: a > b ? a : b 即:如果a > b,则结果为a,否则结果为b

switch语句

语法规范

代码语言:javascript
复制
switch(表达式)
{ 
   case值1:{语句1;break;}
   case值2:{语句1;break;}
   case值3:{语句1;break;}
   ......
   case值n:{语句1;break;}
   default:{语句n+1;break;}
}

执行过程: 根据表达式的值,去大括号中查找与该值相匹配的分支。 如果匹配成功,就立即执行分支后对应的语句,直到遇到break关键字,跳出switch继续往下执行。 如果没有匹配的结果,就执行default后的语句,直到遇到break关键字,结束switch语句。

break关键字 break用在switch…case中用于结束某个case,然后执行switch之外的语句。 注意事项 整个default语句都可以舍掉,default语句只能有一个。 case后边的标签只能是常量或者常量表达式,不能用变量作为case的标签。 case后面只要有操作,最后一定要加break。 多个case可以运行一个语句块。

练习 输入一个月份,打印该月份的天数

代码语言:javascript
复制
    int a;
            Console.WriteLine("请输入一个月份");
            a = Convert.ToInt32(Console.ReadLine());
            switch (a)
            {
                case 1:
                case 3:
                case 5:
                case 7:
                case 8:
                case 10:
                case 12:Console.WriteLine("该月份总共31天");
                    break;
                case 4:
                case 6:
                case 9:
                case 11: Console.WriteLine("该月份总共31天");
                    break;
                default:
                    Console.WriteLine("闰年时29天,平年时28天");
                    break;
            }

文字游戏

代码语言:javascript
复制
using System;
using System.Reflection.Metadata;

namespace test1
{
    class Program
    {
        //变量声明
        static string name = "";   //姓名
        static int hp;             //最大血量
        static int c_hp;           //当前血量
        static int g_hp;           //成长血量
        static int atk;            //攻击力
        static int g_atk;          //成长攻击力
        static int speed;          //速度
        static int g_speed;        //成长速度
        static int level = 0;      //等级.1000经验升一级
        static int exp = 0;        //经验
        static int money = 10;      //金钱

       
        
            //新手村
            static void xinShouCun()
            {
            //引导
            Console.WriteLine("您的前方有一名乞丐,另一侧站着一名富豪,您要与谁交谈?");
            Console.WriteLine("1.乞丐 2.富豪 3.不对话");
            string str = Console.ReadLine();
            //判断
            if (str =="1")
            {
                //乞丐
                if (new Random().Next(0,100)>70)
                {
                    c_hp -= 30;    //残废
                    speed -= 5;  //速度
                    //提示
                    Console.WriteLine("乞丐拿出一本绝世武功,可惜没领悟!血量减30!");
                }
                else
                {
                    //成长提升
                    g_hp += 5;
                    g_atk += 1;
                    g_speed += 5;
                    //提示
                    Console.WriteLine("乞丐拿出本绝世武功,你练完后,感觉飘飘欲仙!各项数值得到增长!");

                }
            }else if (str == "2")
            {
                //富豪 
                if (new Random().Next(0,100)>70)
                {
                    //赚钱了
                    money += 20;
                    //提示
                    Console.WriteLine("富豪看你面善,送你20两银子出去历练。");
                }
                else
                {
                    //血本无归
                    money -= 9;
                    //提示
                    Console.WriteLine("富豪心情不好,让手下打了你一顿,损失了9两银子。");
                }
                ShowInfo();
            }
            //离开新手村提示
            Console.WriteLine("你伴随着黄昏的到来,离去了新手村,向着太阳落幕的地方走去。。。");
            //当前属性
            ShowInfo();

        }
         //创建角色
        static void CreateCharacter()
        {
            Console.WriteLine("请输入你的角色名称:");
            //输入角色名称
            name = Console.ReadLine();
            //判断名称是否正确
            if (string.IsNullOrEmpty(name))   //判断名字是否为空类型
            {
                //给与默认名称
                name = "憨憨";
            }

                //血量  随机90到111之间
                hp = new Random().Next(90,111);  //随机在范围里产生一个数
                c_hp = hp;
                //成长血量  
                g_hp = new Random().Next(7, 12);
                //攻击力
                atk = new Random().Next(7, 12);
                //成长攻击
                g_atk = new Random().Next(2, 5);
                //速度
                speed = new Random().Next(90, 111);
                //速度成长
                g_speed = new Random().Next(10,16);
                //给出提示
                Console.WriteLine("恭喜你,角色创建成功!您的角色名称为:{0},血量为:{1},攻击力为:{2},速度为:{3}。",name,hp,atk,speed);
                //187-232  <200  200-210  210>
                //基础数值总和
                int num = hp + speed + atk;
            if (num < 200)
            {
                Console.WriteLine("您的角色数值超低,脸太黑了!");
            }
            else if (num < 210)
            {
                Console.WriteLine("您的角色看起来平凡到底,做了一个正常人。");
            }
            else
            {
                Console.WriteLine("您的角色看起来充满了王八之气!将来定是夺取天下之人");
            }
                    //成长数值总和 19-30  19-23   24-27  28-30
                    num = g_atk + g_hp + g_speed;
                    if (num<=23)
                    {
                        Console.WriteLine("您的角色潜力看起来好像没什么潜力。。。");
                    }else if (num<=27)
                    {
                        Console.WriteLine("您的角色潜力看起来一般般。");
                    }
                    else
                    {
                        Console.WriteLine("您的角色看起来潜力无穷的样子!");
                    }
                //当前属性
                ShowInfo();
                
        }

        //查看信息
        static void ShowInfo()
        {
            Console.WriteLine("您当前的属性为hp:{0}/{1},atk:{2},speed:{3},money:{4}",c_hp,hp,atk,speed,money);
        }

        //郊区
        static void jiaoQu()
        {
            //提示
            Console.WriteLine("村口站着一名满口大金牙开着豪车的商人,是否对话?1.对话 2.抢劫 3.无视");
            string str = Console.ReadLine();
            if (str =="1")
            {
                //对话
                Console.WriteLine("商人嘴里咬着雪茄笑嘻嘻的说道:‘只要你给我20两银子,就能让你飘飘欲仙!’是否给与?1.给 2.不给");
                //输入
                string str2 = Console.ReadLine();
                if (str2=="1" && money >= 20)
                {
                    //扣钱
                    money -= 20;
                    //加属性
                    g_hp += 10;
                    g_atk += 2;
                    g_speed += 8;
                    Console.WriteLine("经过商人的锻炼,你感觉自己全身充满了力量!");
              
                }
                else
                {
                    Console.WriteLine("商人看了你一眼,离开了这里");
                }

            }else if (str == "2")
            {
                //抢劫
                int num = hp + atk + speed;
                //如果大于210,天资聪慧,能抢劫成功
                if (num>210)
                {
                    money += 30;
                    Console.WriteLine("商人吓得屁滚尿流,丢下30两银子跑了");
                 
                }else
                {
                    money -= 10;
                    Console.WriteLine("商人掏出了他的大炮,抢劫失败,拿出10两银子自保。。");
                    
                }

            }
            ShowInfo();
        }

        //野外
        static void yeWai()
        {
            Console.WriteLine("碰到一头野猪,是否攻击?1.攻击 2.释放技能‘大威天龙’ 3.逃跑");
            string str1 = Console.ReadLine();
            if (str1 == "1")
            {
                int num = hp + atk + speed;
                //如果大于200,天资聪慧,能打败野猪
                if (num>200)
                {
                    //升级后的属性加成
                    exp += 1000;
                    level += 1;
                    hp += g_hp;
                    atk += g_atk;
                    speed += g_speed;
                Console.WriteLine("你战胜了野猪,获得经验+1000,等级升级为2。");
                }else
                {
                    c_hp -= 30;
                    Console.WriteLine("你没打过野猪,当前血量损失了30点。");
                }
            }else if (str1 =="2")
            {
                //升级后的属性加成
                money -= 2;
                exp += 1000;
                level += 1;
                hp += g_hp;
                atk += g_atk;
                speed += g_speed;
                Console.WriteLine("你战胜了野猪,获得经验+1000,等级升级为2。");
            }
            else if (str1 == "3")
            {
                money -= 1;
                Console.WriteLine("你选择了逃跑,损失了1银两。");
               
            } 
            ShowInfo();
            //离开野区提示
            Console.WriteLine("随着你升到了二级,你觉得这个地方已经无法满足你的,于是你向更远的皇宫方向走去。");
        }

         static void huangGong()
        {
            Console.WriteLine("刚来到皇宫的大门口,你看到了一个气质超凡的靓女正在愁眉苦脸的等待着什么。你是否上去搭讪?1.搭讪 2.给她一两银子 3.不理她,继续赶路。");
            string str = Console.ReadLine();
            if (str == "1")
            {
                //搭讪
                Console.WriteLine("靓女对你微微一笑,并没有发生什么其他事情。");

            }else if (str == "2")
            {
                money -= 1;
                Console.WriteLine("靓女深情脉脉的看着你,她好像疯狂的爱上了你,她想要嫁给你,你是否同意?1.同意 2.不同意");
                string str1 = Console.ReadLine();
                if (str1 == "1")
                {
                Console.WriteLine("你同意了,从此和她过上了没羞没躁的日子");
                }
                else if(str1 == "2")
                {
                    Console.WriteLine("你果断拒绝了,声明自己乃是正人君子,绝无任何非分之想。");
                    hp -= 999;
                    Console.WriteLine("该女子十分生气,趁你不注意从怀里掏出一颗手榴弹与你同归于尽。你卒");
                }
                ShowInfo();
            }
           
        }
        static void Main(string[] args)
        {
            //创建角色
            CreateCharacter();
            xinShouCun();
            jiaoQu();
            yeWai();
            huangGong();

        }
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/07/30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关系运算符
  • 逻辑运算符
  • if语句
    • if语句的第一种形式
      • if语句的第二种形式
        • if语句的第三种形式(级联式)
        • 三目运算符
          • switch语句
            • 文字游戏
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档