C# 分支语句 练习题(中间变量,随机数)
练习一
请输入年份:”(1-9999),请输入月份:”(1-12),请输入日期(要判断大小月,判断闰年),判断输入的时间日期是否正确。
计算输入的时间是当前这一年的第几天。
bool dateISOK = false;//放置日期是否正确的判断
bool isRN = false;//放置是否是闰年的判断
int year = ;
int month = ;
int day = ;
//判断年份是否正确
Console.Write("请输入年份:");
year = Convert.ToInt32(Console.ReadLine());
if (year >= && year <= )
{
if ((year % == && year % != ) || year % == )
{
isRN = true;
}
//判断月份是否正确
Console.Write("年份输入正确,请输入月份:");
month = Convert.ToInt32(Console.ReadLine());
if (month > && month < )
{
Console.Write("月份输入正确,请输入日期:");
//判断日期是否正确
day = Convert.ToInt32(Console.ReadLine());
if (month == || month == || month == || month == || month == || month == || month == )
{
if (day >= && day <= )
{
Console.WriteLine("输入的全部日期正确!");
dateISOK = true;
}
else
{
Console.WriteLine("输入的日期有误!");
}
}
if (month == || month == || month == || month == )
{
if (day >= && day <= )
{
Console.WriteLine("输入的全部日期正确!");
dateISOK = true;
}
else
{
Console.WriteLine("输入的日期有误!");
}
}
else if (month == )
{
if ((year % == && year % != ) || year % == )
{
if (day >= && day <= )
{
Console.WriteLine("输入的全部日期正确!");
dateISOK = true;
}
else
{
Console.WriteLine("输入的日期有误!");
}
}
else
{
if (day >= && day <= )
{
Console.WriteLine("输入的全部日期正确!");
dateISOK = true;
}
else
{
Console.WriteLine("输入的日期有误!不是闰年2月最多28天");
}
}
}
}
else
{
Console.WriteLine("输入的月份有误!");
}
}
else
{
Console.WriteLine("输入的年份有误!");
} //如果日期都正确,我们开始计算第几天
if (dateISOK == true)
{
int count = ;
int m1 = , m2 = , m3 = , m4 = , m5 = , m6 = , m7 = , m8 = , m9 = , m10 = , m11 = , m12 = ; if (month == )
count = day;
if (month == )
count = m1 + day;
if (month == )
{
if (isRN == true)
count = m1 + m2 + + day;
else
count = m1 + m2 + day;
}
if (month == )
{
if (isRN == true)
count = m1 + m2 + + m3 + day;
else
count = m1 + m2 + m3 + day;
}
if (month == )
{
if (isRN == true)
count = m1 + m2 + + m3 + m4 + day;
else
count = m1 + m2 + m3 + m4 + day;
}
Console.WriteLine(year + "年" + month + "月" + day + "日是此年的第" + count + "天");
}
Console.ReadLine();
注意此方案中间变量的使用,
bool b =false;假设结果默认错误,
在if 中计算的结果可分为两种 false true
结果正确时 b = true;(赋值) 结果错误时默认
在后面执行运算时可直接引用 if ( b==true )
练习二
猜拳
请输入您的手势(石头/剪子/包袱),用户赢了” “电脑赢了” “平局”
猜拳将用户的手势和电脑的手势输出出来
#region 手势生成
Console.Write("请输入您的手势(石头、剪刀、包袱):");
string user = Console.ReadLine();
int user1; if (user == "石头")
user1 = ;
else if (user == "剪刀")
user1 = ;
else
user1 = ; Random r = new Random();
int com = r.Next(, );
#endregion #region 输出两位选手的手势
string comEnd = ""; if (user != "剪刀" && user != "石头")
{
user = "包袱";
} if (com == )
comEnd = "石头";
else if (com == )
comEnd = "剪刀";
else
comEnd = "包袱"; Console.WriteLine("用户手势:" + user + "\t电脑手势:" + comEnd);
#endregion #region 胜负判断
if ((user1 == && com == ) || (user1 == && com == ) || (user1 == && com == ))
{
Console.WriteLine("用户胜利!");
}
else if ((user1 == && com == ) || (user1 == && com == ) || (user1 == && com == ))
{
Console.WriteLine("用户失败!");
}
else
{
Console.WriteLine("平局!");
}
#endregion Console.ReadLine();
此案例应注意的是随机数的使用和把随机变量转换成字符串输出。
C# 分支语句 练习题(中间变量,随机数)的更多相关文章
- C# 分支语句 练习题
1.“请输入年份:”(1-9999) “请输入月份:”(1-12) “请输入日期:”(要判断大小月,判断闰年) 判断输入的时间日期是否正确 bool dateISOK = false;//放置日期是否 ...
- 运算符 与 分支语句:if ,else if,else;switch case
分支语句: if else if else : switch case --如何使用 if else if else: Console. ...
- 【2017-02-21】分支语句if...else...、分支嵌套、变量的作用域
语句是指程序命令,都是按照顺序执行的. 语句又分为: 顺序语句:从上到下按顺序执行,挨个执行一遍. 分支语句:选择性执行语句,有的可能会执行,有的可能不执行.满足条件执行. 循环语句: 一.分支语句 ...
- 【2-23】分支语句(switch…case)及循环语句
Switch-case分支语句与if语句作用相同,但需将情况都罗列出比较麻烦所以不常用. 其基本结构是: Switch(一个变量值) { Case 值1:要执行的代码段:break; Case 值2: ...
- C# 语句 分支语句 switch----case----.
第二种分支语句 switch..case. switch(一个变量){ case 值:要执行的代码段;break; case 值:要执行的代码段;break; ... ... ... default ...
- C#语句 分支语句 if --- else ---
语句是指程序命令,都是按照顺序执行的.语句在程序中的执行顺序称为“控制流”或“执行流”. 根据程序对运行时所收到的输入的响应,在程序每次运行时控制流可能有所不同. 注意,语句间的标点符号必须是英文标点 ...
- 【2017-2-23】C#switch case分支语句,for循环语句
switch case分支语句 switch(一个变量值) { case 值:要执行的代码段;break; case 值:要执行的代码段;break; … default:代码段;break;(def ...
- 【2017-2-21】C#分支语句,分支嵌套,变量的作用域
分支语句 句式:if else(必须是if开头,可以是else if或者else结束,也可以直接结束) if(bool型比较表达式) { 如果上面的条件成立,则执行这里面的代码 } else if(b ...
- 关于c#分支语句和分支嵌套还有变量的作用域。
分支语句: if....else if....else 必须以 if 开头 后面加括号写入需要判断的内容. 举个栗子说明一下 if (bool类型(比较表达式)) // 他会判断括号内的条件是否 ...
随机推荐
- php判断语句
编写代码时,可以为不同的情况执行不同的动作.可以使用判断条件语句来实现. if...else...elseif 例子一: <?php $t=date("H"); if ($t ...
- Python开发——5.函数
一.函数的定义 def test(x) "The Function definitions" x += return x def:定义函数的关键字 test:函数名 ():定义形参 ...
- 在windows 下使用eclipse进行编译和烧写
eclipse IDE是一款开源的前端编程软件,它提供了编写,编译和调试ESP-IDF项目的图形集成开发环境. 首先在https://www.obeo.fr/en/eclipse-download?I ...
- 如何减少SQL Server中的PREEMPTIVE_OS_WRITEFILEGATHER等待类型
在数据库大小分配期间,我正在等待类型PREEMPTIVE_OS_WRITEFILEGATHER.昨天,我将数据库大小配置为供应商建议的值.我们需要将数据库大小设置为700GB,保留150 GB的日志文 ...
- MyBatis 源码分析系列文章导读
1.本文速览 本篇文章是我为接下来的 MyBatis 源码分析系列文章写的一个导读文章.本篇文章从 MyBatis 是什么(what),为什么要使用(why),以及如何使用(how)等三个角度进行了说 ...
- cad2012卸载/安装失败/如何彻底卸载清除干净cad2012注册表和文件的方法
cad2012提示安装未完成,某些产品无法安装该怎样解决呢?一些朋友在win7或者win10系统下安装cad2012失败提示cad2012安装未完成,某些产品无法安装,也有时候想重新安装cad2012 ...
- 通过Function Score Query优化Elasticsearch搜索结果(综合排序)
在使用 Elasticsearch 进行全文搜索时,搜索结果默认会以文档的相关度进行排序,如果想要改变默认的排序规则,也可以通过sort指定一个或多个排序字段. 但是使用sort排序过于绝对,它会直接 ...
- JSP标准标签库:JSTL
JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能. jstl出现的目的同el一样也是要代替jsp页面中的脚本代码. ...
- OpenStack-Ocata版+CentOS7.6 云平台环境搭建 —9.块存储服务(cinder)部署配置
块存储服务部署相关块存储服务(cinder)为实例提供块存储.存储的分配和消耗是由块存储驱动器,或者多后端配置的驱动器决定的.还有很多驱动程序可用:NAS/SAN,NFS,ISCSI,Ceph等.典型 ...
- 08-部署node节点
部署kubernetes node节点 kubernetes node 节点包含如下组件: Flanneld: 省略,参照之前部署的文档 Docker1.12.5: 省略,参照之前部署的文档 kube ...