美文网首页工作生活C#学习志
C#(二)控制台程序和IF

C#(二)控制台程序和IF

作者: 小花一家 | 来源:发表于2019-06-30 00:09 被阅读0次

    前情提要

    看过许多教程,上面讲学习编程要先学习类、继承、控件、线程;要学习MVC、Core、Web这些内容都无法让我理解并且使我的头脑变得混乱不堪,所以我决定先从最朴实的if、for来编写程序,不使用看起来很酷的一些系统内置模板,C#、.Net、ASP.Net、ASP.Net Code、.Net Code、HTML、JavaScript之间到底有什么混乱的关系也不去管它。

    控制台程序

    工具:vs 2019 for Mac 8.1.3
    文件➡️新建解决方案➡️其他➡️.Net➡️控制台项目➡️下一步➡️名称➡️确定
    打开Program.cs

    using System;
    
    namespace Stu
    {
        class MainClass
        {
            public static void Main(string[] args)
            {
                Console.WriteLine("Hello Word");
            }
        }
    }
    

    在 public static void Main(string[] args){}的大括号里写代码

    IF

    if 语句

    只有当指定条件为 true 时,该语句才会执行代码。

    if (条件)       
      {       
     当条件为 true 时执行的代码        
      }
    
    If...else 语句

    在条件为 true 时执行代码,条件为 false 时执行else代码块代码。

    if (条件)        
      {       
      当条件为 true 时执行的代码      
      }        
    else        
      {        
      当条件为 false 时执行的代码
      }
    
    If...else if...else语句

    判断两个及以上条件时来选择多个代码块之一来执行。

    if (条件1)       
      {        
      当条件 1 为 true 时执行的代码       
      }       
    else if (条件2)       
      {        
     当条件 2 为 true 时执行的代码      
      }        
    else        
      {        
      当条件 1 和 条件 2 都不为 true 时执行的代码        
      }
    

    练习

    If...else if...else

    练习1:
    提示输入用户名,再提示输入密码,如果用户名是“admin”并且密码是“888888”,则提示正确,否则提示错误,如果用户名不是admin提示用户名不存在

                string username = null;
                string userpwd = null;
    
                Console.WriteLine("请输入用户名");
                username = Console.ReadLine();
                Console.WriteLine("请输入密码");
                userpwd = Console.ReadLine();
    
                if (username != "admin")
                {
                    Console.WriteLine("用户名不存在");
                }
                else if (userpwd != "888888")
                {
                    Console.WriteLine("错误");
                }
                else
                {
                    Console.WriteLine("正确");
                }
    

    练习2:
    提示输入年龄,如果大于等于18,则告知可以查看,如果小于10岁,则告知不允许查看,如果大于等于10岁,则提示用户是否继续查看(yes、no),如果输入的是yes则提示用户可以查看,否则提示不可以查看。

                int age = 0;
                Console.WriteLine("输入年龄");
                age = int.Parse(Console.ReadLine());
    
                if (age < 10)
                {
                    Console.WriteLine("不可以观看");
                }
                else if (age >= 10 && age < 18)
                {
                    Console.WriteLine("是否继续观看yes/no");
                    string yn = null;
                    yn = Console.ReadLine();
                    if (yn == "yes")
                    {
                        Console.WriteLine("可以观看");
                    }
                    else
                    {
                        Console.WriteLine("不可以观看");
                    }
                }
                else if (age >= 18)
                {
                    Console.WriteLine("可以观看");
                }
                else
                {
                    Console.WriteLine("你输入的不是年龄");
                }
    

    知识点

    一、if代码外写内容不等于if else
    代码01
                    Console.WriteLine("是否继续观看yes/no");
                    string yn = null;
                    yn = Console.ReadLine();
                    if (yn == "yes")
                    {
                        Console.WriteLine("可以观看");
                    }
                    Console.WriteLine("不可以观看");
    
    代码02
                    Console.WriteLine("是否继续观看yes/no");
                    string yn = null;
                    yn = Console.ReadLine();
                    if (yn == "yes")
                    {
                        Console.WriteLine("可以观看");
                    }
                    else
                    {
                        Console.WriteLine("不可以观看");
                    }
    

    代码01的执行顺序是
    1⃣️获取用户输入内容;
    2⃣️判断内容是否为“yes”,如果是,执行if代码块内容;
    3⃣️执行Console.WriteLine语句;
    4⃣️完成
    代码02的执行顺序是
    1⃣️获取用户输入内容;
    2⃣️判断内容是否为“yes”,如果是,执行if代码块;如果否,执行else代码块
    3⃣️完成

    二、调用类成员---在一个类中调用另一个类的方法

    关于类会延伸出修饰符、构造函数、析构函数、方法重载、方法传参、递归、对象等概念,暂时先不去管,理解眼前问题,知道怎么调用方法即可。

    A 类名
    a 实例名称(自定义:通常规范为类名的小写)
    A1 方法名
    A2 方法名

    类名 实例名称 = new 类名();
    实例名称.方法名();

    //命名空间
    namespace Stu
    {
        //主类
        class MainClass
        {
            //主方法
            public static void Main(string[] args)
            {
                A a = new A();
                a.A1();
            }
        }
        //类
        public class A
        {
            //方法1
            public void A1()
            {
                //代码块
            }
            //方法2
            public void A2()
            {
                //代码块
            }
        }
    }
    
    三、变量和数据转换

    此处会延伸出数据类型、数据转换、变量、常量、可空类型等知识点,如上,暂时不去管。

    1.定义一个变量必须赋值后才可以使用,不同场景下使用的变量赋值方法不唯一

    string username = null;
    int age = 0;
    

    2.不同的数据类型之间需要进行数据转换
    Console.WriteLine()方法默认是string类型数据,int类型接收数据的时候需要进行数据转换,int.Parse(),是一个转换方法。

     int age = 0;
     Console.WriteLine("输入年龄");
     age = int.Parse(Console.ReadLine());
    
    四、运算符

    延伸知识点算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符
    、其他运算符等

    1、<、>= 关系运算符,小于、大于等于的意思
    2、== 关系运算符,相等、一致的意思
    3、= 赋值运算符,将等号右边的值赋给左边
    4、&& 逻辑运算符,与、和的意思,满足A条件和B条件。

                if (age < 10)
                {
                    Console.WriteLine("不可以观看");
                }
                else if (age >= 10 && age < 18)
                {
                    Console.WriteLine("是否继续观看yes/no");
                    string yn = null;
                    yn = Console.ReadLine();
                    if (yn == "yes")
                    {
                        Console.WriteLine("可以观看");
                    }
                    else
                    {
                        Console.WriteLine("不可以观看");
                    }
    
    五、vs 2019 for Mac 代码自动缩进功能

    当保存代码时自动缩进代码,进行格式整理。

    中文:工具-添加自定义工具-行为-自动行为-保存时格式化文档
    英文:Preferences > Text Editor > Behavior>Format document on save

    相关文章

      网友评论

        本文标题:C#(二)控制台程序和IF

        本文链接:https://www.haomeiwen.com/subject/awjmcctx.html