if---(switch-case)语句初步学习总结

 

  Daily sentence:  Happiness is about having each tiny wish come true. 幸福就是达成每一个Tiny Wish.

 

Ctrl+E D C#自动排版.

强制转换:

如果表达式中含有一个double类型的的操作数时候,整个表达式都提升为double类型.

int a=(int)3.14; 将3.14强制转换为int类型.并将值赋给a.

 

int 变量Convert.ToInt32(Console.ReadLine(输入的字符串)); 将输入的字符串转换为int类型.

 

Convert转换不再仅是内存级别的转换,而是考虑数据意义的转换.Convert是一个加工转换的过程.
(要明白为什么转换?!)
Convert.ToInt32();
Convert.ToString(); (一切类型都可以转换成string类型)

int a = 10;
Console.WriteLine(a.ToString()); 将int转换为string类型.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace 试算

{

    class Program

    {

        static void Main(string[] args)

        {

            int a = 11111;          

            Console.WriteLine(a.ToString());//将int类型的a的值11111转换为string类型"11111".

            int age = 23;

            Console.WriteLine(age.ToString());//将int类型的值转换为string类型.

            Console.WriteLine("请输入number的值?");

            int number = Convert.ToInt32(Console.ReadLine());//将输入的字符串转换为int类型.

            Console.WriteLine("a的值是:{0}  number的值是:{1}  你的年龄是:{2}",a,number,age);



            Console.ReadKey();

        }

    }

}
View Code

 

逻辑与逻辑或的短路

逻辑与的短路:当第一个表达式不成立时,就不再执行后面的表达式.

int a=10;

int b=15;

bool result= ++a>15 &&++b>10;

Console.WriteLine("a的值为:{0} b的值为:{1}",a,b );

当执行逻辑与(&&)时第一个bool表达式++a>15不成立时,后面的++b>10就不执行直接跳过,最后a的值为11,b的值仍为15.

只有当++a>15成立时,才会运行++b>15.最后a和b的值都加1.即a=11,b=16.

 

逻辑或的短路:当第一个表达式成立时,就不再运行后面的表达式了.(||只要有一个成立即可)

int a=10;

int b=15;

bool result= ++a<15 ||++b>10;

Console.WriteLine("a的值为:{0} b的值为:{1}",a,b );

因为++a<15成立.后面的++b>10就不再执行,最后a的值为11,b的值仍为15.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace 逻辑与或的短路

{

    class Program

    {

        static void Main(string[] args)

        {

            //逻辑或的短路

            //int a = 10;

            //int b = 15;

            //bool result = ++a < 15 || ++b > 10;



            //Console.WriteLine("a的值为:{0} b的值为:{1}", a, b);





            //逻辑与的短路

            int a = 10;

            int b = 15;

            bool result = ++a > 15 && ++b > 10;



            Console.WriteLine("a的值为:{0} b的值为:{1}", a, b);

            

            Console.ReadKey();



        }

    }

}
View Code

 

if结构(if/if-else/if-else if)

多练习熟练如何才能让程序更加优化,在使用if语句时上面三者的选择问题.

if结构(else永远和最近的if配对)


if(bool表达式) ----必须是bool表达式
{
语句1
}


if-else结构
if(条件)
{语句1;}
else
{语句2;}

if-else if结构(只有当if中的不成立才会进入else if中进行判断)

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace 密码提示问题

{

    class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine("请输入你的密码?");

            string secret = Console.ReadLine();

            if (secret == "888888")

            {

                Console.WriteLine("你输入的密码正确!");

            }

            else 

            {

                Console.WriteLine("请重新输入密码?");

                secret = Console.ReadLine();

                if (secret == "888888")

                {

                   

                    Console.WriteLine("密码正确");

                }

                else 

                {

                    Console.WriteLine("密码错误");

                }

            }

            Console.ReadKey();

        }

    }

}
View Code
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace if_else_if结构

{

    class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine("请输入一个数字?");

            int number = Convert.ToInt32(Console.ReadLine());

            if (number >= 90)

            {

                Console.WriteLine("A");

            }

            else if (number >= 80)

            {

                Console.WriteLine("B");

            }

            else if (number >= 70)

            {

                Console.WriteLine("C");

            }

            else if (number >= 60)

            {

                Console.WriteLine("D");

            }

            else

            {

                Console.WriteLine("E");

            }

            Console.ReadKey();

        }

    }

}
View Code
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace 作业

{

    class Program

    {

        static void Main(string[] args)

        {

            //作业1

            

            Console.WriteLine("请输入你的用户名?");

            string useName = Console.ReadLine();

            Console.WriteLine("请输入你的密码?");

            string useSecret = Console.ReadLine();                   



                if (useName == "admin" && useSecret == "mypass")

                    {

                        Console.WriteLine("登录成功!");

                    }                

            



            Console.ReadKey();

        }

    }

}
View Code
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace if结构

{

    class Program

    {

        static void Main(string[] args)

        {

            

           Console.WriteLine("请输入你的年龄!");

           int age=Convert.ToInt32( Console.ReadLine());

           if (age >=18)

               Console.WriteLine("你已经成年.");

           else

               Console.WriteLine("你未成年.");

            Console.ReadKey();                                            

            



        }

    }

}
View Code
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace if_else_if_作业

{

    class Program

    {

        static void Main(string[] args)

        {

            //作业1

            //Console.WriteLine("请输入你的密码?");

            //string secret = Console.ReadLine();

            //if (secret == "888888")

            //{

            //    Console.WriteLine("你输入的密码正确!");

            //}

            //else

            //{

            //    Console.WriteLine("密码错误,请重新输入!");

            //}



            //secret = Console.ReadLine();

            //if (secret == "888888")

            //{

            //    Console.WriteLine("你输入的密码正确!");

            //}

            //else

            //{

            //    Console.WriteLine("密码错误,请重新输入!");

            //}



            //作业1(优化方法---可以将if-else直接嵌套进else中)

            //Console.WriteLine("请输入你的密码?");

            //string secret = Console.ReadLine();

            //if (secret == "888888")

            //{

            //    Console.WriteLine("你输入的密码正确!");

            //}

            //else

            //{

            //    Console.WriteLine("请重新输入密码?");

            //    secret = Console.ReadLine();

            //    if (secret == "888888")

            //    {



            //        Console.WriteLine("密码正确");

            //    }

            //    else

            //    {

            //        Console.WriteLine("密码错误");

            //    }

            //}

            





            ////作业2

            //Console.WriteLine("请输入你的用户名?");

            //string useName = Console.ReadLine();

            //Console.WriteLine("请输入你的密码?");

            //string secret = Console.ReadLine();

            //if (useName == "admin" && secret == "888888")

            //{

            //    Console.WriteLine("你输入的用户名和密码正确!");

            //}

            //else if (useName != "admin" /*|| secret == "888888"*/)

            //{

            //    Console.WriteLine("你输入的用户名不存在!");

            //}

            //else//(useName == "admin" || secret != "888888") 除去上面两种可能剩下的就是括号中的这种了.

            //{

            //    Console.WriteLine("你输入的密码不正确!");

            //}



            //作业3

            Console.WriteLine("请输入你的年龄?");

            int age = Convert.ToInt32(Console.ReadLine());

            if (age >= 18)

            {

                Console.WriteLine("可以观看.");

            }

            //if (age < 10)

            //{

            //    Console.WriteLine("不可以观看.");

            //}

            else if (age>=10)

            {

                Console.WriteLine("是否决定观看?");

                Console.WriteLine("请输入yes或者no?");

                string input = Console.ReadLine();                

                if (input == "yes")

                {

                    Console.WriteLine("请查看.");

                }

                     

                else

                {

                    Console.WriteLine("退出,你放弃查看.");

                }

                

            }

            else

            {

                Console.WriteLine("不可以观看!");

            }

            Console.ReadKey();

        }

    }

}
View Code

 

****(还需深入理解并会应用)

控制一些语句的是否输出:应用bool表达式加上if结构完成.

bool 变量=false;

if(变量==false)

{

要控制是否输出的程序.

}

****

switch-case语句

可以解决一些if语句计较繁琐的代码.

结构为:

switch(表达式)

  case:"值1":

    语句块1;

  break;

......

  case:"值n":

    语句块n;

  break;

  default:语句块;

  break;

上面的语法中:break是每句都需要写的.表达式中的值与case中的值一个一个比较,直到找到相等的为止,如果没有就将跳入default语句中,执行default语句中的程序,

如果没有default语句,程序就直接跳出.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;



namespace switch_case

{

    class Program

    {

        static void Main(string[] args)

        {

            Console.WriteLine("请输入一个字母(A-E)?");

            string input = Console.ReadLine();

            int salary = 5000;

            bool sign = false;

            switch(input)

            {

                case "A":

                    salary += 500;

                    break;

                case"B":

                    salary += 200;

                    break;

                case"C":

                    break;

                case"D":

                    salary -= 200;

                    break;

                case"E":

                    salary -= 500;

                    break;  



                default:

                    Console.WriteLine("你输入的英文字母有错误!");

                    sign = true;

                    break;

                    

            }

            if (sign == false)

            {

                Console.WriteLine("你的工资是" + salary);

            }



                Console.ReadKey();

            

            

        }

    }

}
View Code

 

Long way to go......

你可能感兴趣的:(switch)