分支(条件)语句03/07
一、 语句分类:顺序语句,选择语句(分支语句),循环语句
二、 1、if(){}
例如int a = 10;
if (a < 11)
{
a++;
}
if (a > 3)
{
a--;
}
Console.WriteLine(a); 运算结果10
2、if(){}else{} 二选一
//若if成立,则不去走else
//若if不成立,则一定会走else
例如int a = 10;
if (a > 3)
{
a--;
}
else
{
a++;
}
Console.WriteLine(a); 运算结果9
3、if(){} else if(){} else if(){} else{} 多选一
//若if成立,那其他的所有都不去看
//若if不成立,去查看下一个else if成立不成立,若成立,剩下的全都不用看
例如int a = 10;
if (a > 9)
{
a++;
}
else if (a < 11)
{
a++;
}
else
{
a++;
}
Console.WriteLine(a); 运算结果11
4、if(){} if(){} if(){}……多选一
5、if的嵌套
//if()
//{
// if()
// {
// }
// else
// {
// }
//}
例如int a = 10;
//if (a < 100)
//{
// if (a > 3 && a < 20)
// {
// a++;
// }
// else
// {
// a--;
// }
//}
//else
//{
// a += 10;
//}
//Console.WriteLine(a);运算结果11
三、 练习部分
1、 //输入一个小于等于100的整数,判断:
//是小于10的
//两位数
//是100
//Console.Write("请输入一个小于等于100的整数:");
//int a = int.Parse(Console.ReadLine());
//if (a <= 100)
//{
// if (a < 10)
// {
// Console.WriteLine("您输入的是一个小于10的数!");
// }
// else if (a >= 10 && a < 100)
// {
// Console.WriteLine("您输入的是一个两位数的数!");
// }
// else//100
// {
// Console.WriteLine("您输入的数是100!");
// }
//}
//else
//{
// Console.WriteLine("您的输入有误!");
//}
2. //输入三个整数,xyz,最终以从小到大的方式输出。
//利用嵌套。
//Console.Write("x=");
//int x = int.Parse(Console.ReadLine());
//Console.Write("y=");
//int y = int.Parse(Console.ReadLine());
//Console.Write("z=");
//int z = int.Parse(Console.ReadLine());
Console.Write("请输入x=");
int x = int.Parse(Console.ReadLine());
Console.Write("请输入y=");
int y = int.Parse(Console.ReadLine());
Console.Write("请输入z=");
int z = int.Parse(Console.ReadLine());
if (x < y && x < z)
{
if (y < z)
{
Console.WriteLine("从小到大依次为" + x + "," + y + "," + z + "。");
}
else
{
Console.WriteLine("从小到大依次为" + x + "," + z + "," + y + "。");
}
}
if (y < x && y < z)
{
if (x < z)
{
Console.WriteLine("从小到大依次为" + y + "," + x + "," + z + "。");
}
else
{
Console.WriteLine("从小到大依次为" + y + "," + z + "," + x + "。");
}
}
if (z < x && z < y)
{
if (x < y)
{
Console.WriteLine("从小到大依次为" + z + "," + x + "," + y + "。");
}
else
{
Console.WriteLine("从小到大依次为" + z + "," + y + "," + x + "。");
}
}
3、//输入三个整数,xyz,最终以从小到大的方式输出。
//Console.WriteLine(x);
//Console.WriteLine(y);
//Console.WriteLine(z);
//利用中间变量
Console.Write("x=");
int x = int.Parse(Console.ReadLine());
Console.Write("y=");
int y = int.Parse(Console.ReadLine());
Console.Write("z=");
int z = int.Parse(Console.ReadLine());
int zhong;
if (x < y && x < z)
{
if (y < z)
{
}
else//x<z<y
{
zhong = y;
y = z;
z = zhong;
}
}
else if (y < x && y < z)
{
zhong = x;
x = y;
y = zhong;
if (y < z)//x<y<z
{
}
else//x<z<y
{
zhong = y;
y = z;
z = zhong;
}
}
else//z最小
{
zhong = x;
x = z;
z = zhong;
if (y < z)//x<y<z
{
}
else//x<z<y
{
zhong = y;
y = z;
z = zhong;
}
}
Console.WriteLine(x);
Console.WriteLine(y);
Console.WriteLine(z);
Console.ReadLine();
4、/相亲过程
//女:你有房子么?
//若有→结婚吧;没有→你有钱么?
//若有→先买房子再结婚;
//没有→你有能力么?
//有→先赚钱再买房子再结婚
//没有→拜拜
Console.WriteLine("你有房子吗?");
string m = Console.ReadLine();
if (m == "有")
{ Console.WriteLine("咱们结婚吧"); }
else if (m == "没有")
{
Console.WriteLine("你有钱吗?");
string mm = Console.ReadLine();
if (mm == "有")
{
Console.WriteLine("先买房再结婚。");
}
else if (mm == "没有")
{
Console.WriteLine("你有能力吗?");
string mmm = Console.ReadLine();
if (mmm == "有")
{
Console.WriteLine("先赚钱再买房再结婚");
}
else
{ Console.WriteLine("拜拜"); }
}
}
5、//输入学生姓名,输入考试成绩 double
//若是100,【恭喜你***,满分通过!】
//若是大于等于80小于100,【**,你很优秀,继续保持!】
//若是大于等于60小于80,【**成绩良好】
//大于等于50小于60,【**就差一点点,下次一定要至少及格!】
//小于50,【**你是笨蛋么?】
Console.Write("请输入你的姓名:");
string xm = Console.ReadLine();
Console.Write("请输入成绩:");
double cj = double.Parse(Console.ReadLine());
if (cj <= 100 && cj >= 0)
{
if (cj == 100)
{
Console.WriteLine("恭喜你" + xm + ",满分通过。");
}
else if (cj >= 80)
{
Console.WriteLine(xm + ",你很优秀,继续保持。");
}
else if (cj >= 60)
{
Console.WriteLine(xm + "成绩良好。");
}
else if (cj >= 50)
{
Console.WriteLine(xm + "就差一点,再加把劲。");
}
else
{
Console.WriteLine(xm + "你是笨蛋吗?");
}
}
else
{
Console.WriteLine("你输入有误!");
}
6、//有一组函数:y = x (x<1);
//y = 2x -1 (1<=x<10);
//y = 3x-11 (x>=10)。
//括号内是x的满足条件。
//实现功能,随意输入一个x值,输出y的值。
Console.Write("输入x=");
double x = double.Parse(Console.ReadLine());
double y;
if (x >= 10)
{ y = 3 * x - 11; }
else if (x >= 1)
{ y = 2 * x - 1; }
else { y = x; }
Console.WriteLine("输出y=" + y);
7、一元二次方程问题
Console.WriteLine("解一元二次方程a*x*x+b*x+c=0");
Console.Write("a=");
double a = double.Parse(Console.ReadLine());
Console.Write("b=");
double b = double.Parse(Console.ReadLine());
Console.Write("c=");
double c = double.Parse(Console.ReadLine());
double d = b * b - 4 * a * c;
if (a !=0)
{
Console.WriteLine("你输入的是二元一次方程。");
double x1 = (-b + Math.Sqrt(d)) / (2 * a);
double x2 = (-b - Math.Sqrt(d)) / (2 * a);
if (d > 0)
{
Console.WriteLine("方程有两个不同的根:x1="+x1+",x2="+x2);
}
else if (d == 0)
{
Console.WriteLine("方程有两个相同的根:x1=x2="+x1);
}
else
{
Console.WriteLine("方程没有根。");
}
}
else
{
Console.Write("你输入的不是一元二次方程。");
}