c#基础语句——分支语句的应用
一、if...else...
if是如果的意思,else是另外的意思,if后面跟(),括号内为判断条件,如果符合条件则进入if语句执行命令。如果不符合则不进入if语句。else后不用加条件,但是必须与if配合使用,else后也可以加if,但if后需要条件。if...else...可以嵌套。
类似于条件运算符,其格式如下:
格式1:
if ( ) //括号里是判断条件
{
//程序代码,运算等
}
格式2:
if ( ) //括号里是判断条件
{
//程序代码,运算等
}
else //如果不满足条件则执行这里的代码
{
//程序代码,运算等
}
格式3:
if ( ) //括号里是判断条件
{
//程序代码,运算等
}
else if ( ) //另外如果满足条件2则执行以下的代码
{
//程序代码,运算等
}
格式4::
if (1) //如果满足条件1则执行这里的代码
{
//程序代码,运算等
}
else if(2)//如果满足条件2则执行这里的代码
{
//程序代码,运算等
}
else
{
//程序代码,运算等
}
练习题1、“请输入年份:”
判断是否是闰年,“xxxx年是闰年”,“xxxx年不是闰年”
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 语句 { class Program { static void Main(string[] args) { //等待用户输入 Console.WriteLine("请输入年份:"); //输入的字符串类型转换为整型 int year=Convert.ToInt32(Console.ReadLine()); //判断闰年的条件,满足输出“--是闰年”,不满足输出“--不是闰年” if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { Console.WriteLine(year + "年是闰年"); } else { Console.WriteLine(year+"年不是闰年"); } Console.ReadLine(); } } }
练习题2、“请输入您的分数:”
小于0,大于100,“输入的分数有误!”
大于0,小于10,“不及格!学渣!”
小于60,“不及格!继续努力!”
大于等于60,“恭喜你!及格了!”
大于等于90,“学霸!很厉害!”
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 练习题2 { class Program { static void Main(string[] args) { //输出“请打印您的分数”,并转换成整型 Console.WriteLine("请输入您的分数:"); int grade = Convert.ToInt32(Console.ReadLine()); //判断分数是否是0~100小于0,大于100,“输入的分数有误!” //大于0,小于10,“不及格!学渣!” //小于60,“不及格!继续努力!” //大于等于60,“恭喜你!及格了!” //大于等于90,“学霸!很厉害!” if (grade < 0 || grade > 100) { Console.WriteLine("输入的分数有误!"); } else if (grade > 0 && grade < 10) { Console.WriteLine("不及格!学渣!"); } else if ( grade < 60) { Console.WriteLine("不及格!继续努力!"); } else if (grade >= 60 && grade < 90) { Console.WriteLine("恭喜你!及格了!"); } else if (grade >= 90) { Console.WriteLine("学霸!很厉害!"); } Console.ReadLine(); } } }
练习题3、猜拳
“请输入您的手势(石头/剪子/包袱):”
“用户赢了” “电脑赢了” “平局”
自己做的方法:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 练习题3 { class Program static void Main(string[] args) { //让用户输入手势 Console.WriteLine("请输入您的手势(石头(2)/剪子(0)/包袱(1)):"); string gesture=Console.ReadLine(); //电脑生成手势 Random computer=new Random(); int number = computer.Next(0,3); Console.WriteLine(number); //输赢输出 if ((gesture == "石头" && number == 0 )|| (gesture == "剪子" && number == 1) || (gesture == "包袱 " && number == 2)) { Console.WriteLine("用户赢了"); } else if ((gesture == "剪子" && number == 2) || (gesture == "石头" && number == 1) ||( gesture == "包袱 " && number == 0)) { Console.WriteLine("电脑赢了"); } if ((gesture == "包袱" && number == 2) || (gesture == "剪子" && number ==0) || (gesture == "石头" && number == 1)) { Console.WriteLine("平局"); } // Console.ReadLine(); } } }
老师讲的答案
练习题4、人工智能对话
如果说的是同一句话,不一定要回复同一句
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 练习题4 { class Program { static void Main(string[] args) { //输出“等待用户输入” //Console.WriteLine("等待用户输入:"); //产生随机数0~5 string user=Console.ReadLine(); Random answer = new Random(); int answer1 = answer.Next(0, 5); //如果用户输入“你好”,系统随机输出 if (user == "你好" && answer1 == 0) { Console.WriteLine("你也好"); } else if (user=="你好" && answer1 == 1) { Console.WriteLine("hello"); } else if (user=="你好" && answer1 == 2) { Console.WriteLine("How are you"); } else if (user == "你好" && answer1 == 3) { Console.WriteLine("I'm fine"); } else if (user == "你好" && answer1 == 4) { Console.WriteLine("yes"); } Console.ReadLine(); } } }
-------------------------------------
1、“请输入年份:”(1-9999)
“请输入月份:”(1-12)
“请输入日期:”(要判断大小月,判断闰年)
判断输入的时间日期是否正确
2、计算输入的时间是当前这一年的第几天
3、标准体重
男士体重 = 身高 - 100 +-3
kg cm
女士体重 = 身高 - 110 +-3
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 作业题3标准体重 { class Program { static void Main(string[] args) { Console.Write("请输入性别:"); string sex = Console.ReadLine(); Console.Write("请输入身高cm:"); int height = Convert.ToInt32(Console.ReadLine()); Console.Write("请输入体重kg:"); int weave = Convert.ToInt32(Console.ReadLine()); if (sex == "男") { if (weave < height - 100 - 3 ) { Console.WriteLine("魔鬼身材!"); } else if (weave > height - 100 + 3) { Console.WriteLine("标准身材!"); } else { Console.WriteLine("该减肥了!"); } } else if (sex == "女") { if (weave < height - 110 - 3) { Console.WriteLine("魔鬼身材!"); } else if (weave > height - 110 + 3) { Console.WriteLine("标准身材!"); } else { Console.WriteLine("该减肥了!"); } } Console.ReadLine(); } } }
输出结果:
4、猜拳将用户的手势和电脑的手势输出出来
5、“请输入24小时制的时间:”
0-24 如果超出“时间输入有误”
11 - “上午11点”
14 - “下午2点”
6点前是“凌晨”
晚上10点后是“深夜”
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 作业题5时间24小时制 { class Program { static void Main(string[] args) { //请输入24小时制的时间0~24 Console.Write("请输入24小时制的时间0~24:"); int time=Convert.ToInt32(Console.ReadLine()); if (time >= 0 && time <= 24) { if (time >= 0 && time <= 6) { Console.Write("凌晨"+time+"点"); } else if (time >6 && time <= 12) { Console.Write("上午" + time + "点"); } else if (time >12 && time <= 22) { Console.Write("下午" + (time-12) + "点"); }
输出结果: