zoukankan      html  css  js  c++  java
  • C#基础_选择结构和循环结构、三元运算符(五)

    关系运算符 > >= < <= !=  ==
             对数值的运算 ,结果返回的是 bool值

    逻辑运算符  &&  ||  !
        && :逻辑与,前后都为TRUE 结果为TRUE
        ||    : 逻辑或,有一个为TRUE,结果为TRUE
        !  : 逻辑非,取反,TRUE取反是FALSE

     三元运算符:

       数据类型  变量名 = 表达式 ? 表达式1:表达式2;

    三元运算过程: 如果表达式结果为TRUE,表达式1的结果赋值给变量,

                        如果表达式结果为FALSE,表达式2的结果赋值给变量

    表达式:结果是bool值,可以是bool值,或者是关系表达式或是逻辑运算表达式

    表达式2和表达式1的结果的数据类型要和变量的数据类型一致

    int num = true ? num1: num2;


    选择结构 if

    If(判断条件)
    {            
    执行语句;
    }
    else if(判断条件)
    {执行语句;}
    else
    {执行语句}

    判断条件:
    1. bool值,关系表达式或者逻辑表达式得到的的结果是bool值
    2. 只能在if后才能加判断条件
    互斥性:
    if ---else if ---else 只能执行其中一个执行语句,如果满足前边的条件,后边的就不再判断

    两个练习题:

     1  //  如果小明的(chinese  music)
     2             //  1. 语文成绩大于90并且音乐成绩大于80
     3             //  2.语文成绩等于100并且音乐成绩大于70,则奖励100元.
     4             int chinese1 = Convert.ToInt32(Console.ReadLine());
     5             int music = Convert.ToInt32(Console.ReadLine());
     6             mb = (chinese1 > 90 && music > 80) || (chinese1 == 100 && music > 70);
     7             if (mb)
     8             {
     9                 Console.WriteLine("得到100元奖励。");
    10             }
    11 
    12             //让用户输入用户名和密码,如果用户名为admin,密码为mypass,则提示登录成功.
    13             string user = Console.ReadLine();
    14             string password = Console.ReadLine();
    15             if (user == "admin" && password == "mypass")
    16             {
    17                 Console.WriteLine("登录成功");
    18             }
    练习题

    Switch – case
    语法结构:
    Int num = 1 ;
    Switch(num)
    {
        case  1:
            执行语句;
                       break;
        case  2:
            执行语句;
                       break;
        ……..
        default:
        break;
    }
    1.Switch case针对的是单个值的比较,如果比较范围if更加方便
    2.从上向下逐个比较,如果都不满足就执行默认default
    3.Case穿透:如果满足case 1:条件,但是在case 1下没有break,那么在执行完case 1,不能结束结构,继续向下执行case 2,直到遇到break结束结构,可以应用于几个值执行相同的的执行语句

     1  /* 
     2             * 李四的年终工作评定,如果定为A级,则工资涨500元,如果定为B级,
     3             * 则工资涨200元,如果定为C级,工资不变,如果定为D级工资降200元,
     4             * 如果定为E级工资降500元.设李四的原工资为5000,请用户输入李四
     5             * 的评级,然后显示李四来年的工资.
     6             */
     7             double salary = 5000;
     8             Console.WriteLine("请输入李四的工作评定等级:");
     9             string level = Console.ReadLine();
    10             switch (level)
    11             {
    12                 case "A":
    13                     salary += 200;
    14                     Console.WriteLine(salary);
    15                     break;
    16                 case "B":
    17                     salary += 500;
    18                     Console.WriteLine(salary);
    19                     break;
    20                 case "C":
    21                     salary += 1000;
    22                     Console.WriteLine(salary);
    23                     break;
    24 
    25                 default:
    26                     break;
    27             }
    练习题

    循环结构for

      对特定条件进行判断,满足则执行循环体,用于将某个语句或语句块重复执行预定次数。
    语法:
        for(初始化;条件;增减变量)
        {
                循环体
        }
    1.初始化:int I = 0; i是计次变量,用来记录循环多少次的
    2.判断条件: 判断循环是否继续执行,TRUE继续,FALSE结束循环结构
    3.增减变量:用来控制变量变化,控制循环执行次数的
    4.循环体:循环每次要执行的语句

     1   //练习1.求出100-999之间的水仙花数
     2             //水仙花数: 这个三个位上的数的立方和等于这个数本身
     3             for (int i = 100; i < 1000; i++)
     4             {
     5                 //分别求出三位上的数
     6                 int bai = i / 100;
     7                 int shi = (i % 100) / 10;
     8                 int ge = i % 10;
     9                 int num = bai * bai * bai + shi * shi * shi + ge * ge * ge;
    10                 if (num == i)
    11                 {
    12                     Console.WriteLine(i + "是水仙花数");
    13                 }
    14             }
    for循环练习题
     1  // 1~100之间的整数相加,得到累加值大于20的当前数(比如:1+2+3+4+5+6=21)结果6
     2             sum = 0;
     3 
     4             for (int i = 1; i < 100; i++)
     5             {
     6                 sum += i;
     7                 if (sum > 20)
     8                 {
     9 
    10                     Console.WriteLine("累加值大于20的当前数{0}", i);
    11                     break;
    12                 }
    13             }
    for循环练习2

    循环结构while

     条件表达式为true,则执行循环体,用于次数不确定的情形。
    语法:
        while(循环条件)
        {
               循环体
        }
    1.循环条件:判断循环是否执行,TRUE继续,FALSE结束
    2.循环体:执行语句 和 控制变量语句
    3.在变量外部声明变量 int I = 0;也是计次和for相似

     

      while (false) //循环条件
                {
                    //循环体
                }
                //当满足循环条件,执行循环体,循环条件为true,就是死循环

     1 /*
     2              练习1: 求1到100的和
     3              *练习2: 100内偶数的和
     4              */
     5            int   i = 1;
     6             int sum = 0;
     7             while (i>=1)
     8             {
     9                 sum = sum + i;
    10                 i++;
    11             }
    练习题:
     1 //练习1:循环录入5个人的年龄并计算平均年龄,如果录入的数据出现负数或大于100的数,立即停止输入并报错.
     2    int sum = 0;
     3             for (int i = 0; i < 5; i++)
     4             {
     5                 Console.WriteLine("输入第{0}个人的年龄", i);
     6                 bool b = true;
     7                 try
     8                 {
     9 
    10                     int age = Convert.ToInt32(Console.ReadLine());
    11                     if (age >= 0 && age <= 100)
    12                     {
    13                         sum += age;
    14                     }
    15                     else
    16                     {
    17                         //给一个提示 结束程序
    18                         Console.WriteLine("输入年龄不在范围内,程序结束");
    19                         b = false;
    20                         break;
    21                     }
    22 
    23                 }
    24                 catch
    25                 {
    26                     Console.WriteLine("输入年龄不正确有误,程序结束");
    27                     b = false;
    28                     break;
    29 
    30                 }
    31                 if (b)
    32                 {
    33                     Console.WriteLine("5个人的年龄平均年龄{0}", sum / 5);
    34                 }
    35 
    36             }
    37 
    38 
    39             // 1~100之间的整数相加,得到累加值大于20的当前数(比如:1+2+3+4+5+6=21)结果6
    40             sum = 0;
    41 
    42             for (int i = 1; i < 100; i++)
    43             {
    44                 sum += i;
    45                 if (sum > 20)
    46                 {
    47 
    48                     Console.WriteLine("累加值大于20的当前数{0}", i);
    49                     break;
    50                 }
    51             }
    while练习2
     1 //练习2:在while中用break实现要求用户一直输入用户名和密码,只要不是admin、88888就一直提示要求重新输入, 如果正确则提登录成功.
     2 
     3    while (true)
     4             {
     5                 Console.WriteLine("请输入用户名 :");
     6 
     7                 string s = Console.ReadLine();
     8                 Console.WriteLine("请输入密码 :");
     9 
    10                 string ss = Console.ReadLine();
    11                 if (s == "admin" && ss == "88888")
    12                 {
    13                     //如果成立
    14 
    15                     Console.WriteLine("登录成功,结束程序");
    16                     break;
    17                 }
    18                 else
    19                 {
    20                     Console.WriteLine("用户名或者密码错误,重新输入");
    21                 }
    22             }
    23 
    24             int n = 0;
    25             for (; ; Console.WriteLine("请++++++++++++++++++++"), Console.WriteLine("请++++++++++++++++++++"), Console.WriteLine("请++++++++++++++++++++"))
    26             {
    27                 Console.WriteLine("请输入用户名 :");
    28 
    29                 string s = Console.ReadLine();
    30                 Console.WriteLine("请输入密码 :");
    31 
    32                 string ss = Console.ReadLine();
    33                 if (s == "admin" && ss == "88888")
    34                 {
    35                     //如果成立
    36 
    37                     Console.WriteLine("登录成功,结束程序");
    38                     break;
    39                 }
    40                 else
    41                 {
    42                     Console.WriteLine("用户名或者密码错误,重新输入");
    43                 }
    44             }
    while练习3

     循环结构 do---while

     执行语句块中的语句,直到条件表达式为false。
    与while语句区别:
        -- while语句先判断条件,满足时执行循环体。
        -- do while语句先执行循环体,满足条件再次执行。
    语法:
        do
        {
            循环体
        } while(条件);
    1.一定会执行一次方法体,例如在银行取钱一样,需要先操作在进行判断是否密码正确

     

     1  /*明天小兰就要登台演出了,老师说再把明天的演出的歌曲唱一遍,
     2              * 如果满意,小兰就可以回家了.否则就需要再练习一遍,
     3              * 直到老师满意为止.(y/n)
     4             */
     5             Console.WriteLine("是否老师满意:yes/no");
     6             string answer;
     7             do
     8             {
     9                 Console.WriteLine("小兰唱一遍,询问老师是否满意");
    10                 answer = Console.ReadLine();
    11             } while (answer=="no");
    12 
    13 
    14             do
    15             {
    16                 //循环语句
    17             } while (false );//循环条件
    18             //先执行do中循环体,再判断dowhile 中的循环条件,如果成立执行循环体,不成立结束
    练习题
  • 相关阅读:
    图形化编程娱乐于教,Kittenblock arduino实例解读,红外线接收
    图形化编程娱乐于教,Kittenblock arduino实例解读,红外线发送
    图形化编程娱乐于教,Kittenblock arduino实例解读,红外线发送
    图形化编程娱乐于教,Kittenblock arduino实例解读,红外线发送
    图形化编程娱乐于教,Kittenblock arduino实例,液晶屏显示
    图形化编程娱乐于教,Kittenblock arduino实例,数码管计时器
    图形化编程娱乐于教,Kittenblock arduino实例,超声波测距
    超级简单的Android Studio jni 实现(无需命令行)
    实现ViewPager懒加载的三种方法
    MySQL安装
  • 原文地址:https://www.cnblogs.com/CeasarH/p/9163429.html
Copyright © 2011-2022 走看看