一、思维导图
二、三大结构说明
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();