一、思维导图
二、三大结构说明
1.顺序结构
顾名思义,就是按照所写代码的书写顺序、从上到下的顺序来执行。
2.分支结构
有选择的来执行语句,如果条件为真执行语句1,如果条件为假执行语句2
、
3.循环结构
循环,就是执行一段重复的代码。当满足表达式的条件时,会执行语句块,什么时候条件不满足了,就终止。但程序有可能一次都不执行
三、实战演练
注:以下实例均只考虑输入正确情况
1.if...else:判断用户输入年份是否为闰年
Console.WriteLine("请输入年份"); //提示用户输入年份 int year = Convert.ToInt32(Console.ReadLine()); //接收用户输入内容,转为int类型 bool result = (year % 400 == 0) || (year % 4 == 0 && year % 100 != 0); //能整除,能整除4但不能被100整除 if (result) //括号里面方判断条件,result现在有两个值,True和False。 { Console.WriteLine("是闰年"); //如果条件为真,是闰年 } else { Console.WriteLine("不是闰年"); //如果条件为假,不是闰年 } Console.ReadKey();
2.switch...case:根据学生输入的成绩判断学生成绩等级
string str = ""; //定义一个字符串变量 Console.WriteLine("请输入成绩"); double result = Convert.ToDouble(Console.ReadLine()); //用户输入成绩为double类型 if (result >= 90) //成绩>=90:A { str= "A"; } else if (result >=80) //90>成绩>=80:B { str = "B"; } else if(result >=70) { str = "C"; //80>成绩>=70:C } else if(result >= 60) { str = "D"; //70>成绩>=60:D } else { Console.WriteLine("等级为:E"); //成绩<60:E } Console.ReadKey(); //等待用户输入指令
3.switch...case:根据用户输入成绩,判断用户成绩的等级
Console.WriteLine("请输入你的成绩"); //提示用户输入 double result = Convert.ToDouble (Console.ReadLine()); //接受用户输入内容 switch (result) { case 100: case 90: Console.WriteLine("优秀!"); //如果前一个case的输出语句与这个case的输出语句相同,则前一个可以省略 break; case 80: Console.WriteLine("良好"); break; case 70: case 60: Console.WriteLine("及格!"); break; default: Console.WriteLine("不及格"); break; } Console.ReadKey(); //等待用户按下任意键退出
4.while :计算1-100的累加和
int i = 1; //i的初始值为1 int sum = 0; //累加和的初始值为0 while (i <= 100) //循环 { sum = sum + i; //和累加 i++; //每次循环加1 } Console.WriteLine("1-100的累加和为:{0}", sum); //在控制台输出结果 Console.ReadKey(); //等待用户按下某键并退出
5.do...while:不断要求用户输入一个数字,然后打印这个数字的二倍,当用户输入q的时候程序退出
string str = ""; //定义一个字符串变量 int number = 0; //一个int类型变量,接收类型转换后的数字 do { Console.WriteLine("请输入一个数字"); str = Console.ReadLine(); //接收用户输入的数字 if (str != "q") //如果用户输入的数字不是q时 { number = Convert.ToInt32 (str); //将数字转为int类型 Console.WriteLine("这个数的二倍是{0}", number * 2); //打印这个数的二倍 } } while (str != "q"); //当用户输入的输入不是q的时候就循环 Console.WriteLine("程序结束"); //输出结果 Console.ReadLine(); //等待用户按下某键退出
6.for:1-100之间的整数相加,得到累加值大于20的当前数(比如:1+2+3+4+5+6=21)结果6
int sum = 0; //一个int类型变量,计算和 for (int i = 1; i <= 100; i++) //for循环,次数1-100 { sum += i; //和进行累加 if (sum > 20) //如果和>20 { Console.WriteLine("{0}-----------------------{1}",sum,i); //输出结果 break; //跳出循环,程序结束 } } Console.ReadKey();
7.while continue:实现计算1到100含之间的出了能被7整除之外所有整数的和
int i = 1; //一个int类型变量并赋初值 int sum = 0; //和初始化为0 while (i <= 100) //while循环,上限100 { if (i % 7 == 0) //如果能被7整除 { i++; //i+1 continue; //跳出当前循环,执行下一次循环 } sum += i; //和进行累加 i++; //i+1 } Console.WriteLine("总和为:{0}", sum); //输出结果 Console.ReadKey(); //等待用户按下某键退出
8.三元表达式:实现和if...else相同功能,只用一行就解决
表达式1?表达式2:表达式3
Console.WriteLine("请输入姓名"); //输入姓名 string name = Console.ReadLine(); //接收用户输入内容 string result = name =="小邓" ?"系统提示此人很纯洁" : "此人很邪恶"; //三元表达式 //如果用户输入的内容是“小邓”,则控制台输出"系统提示此人很纯洁",反之 Console.WriteLine(result); Console.ReadKey();