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类型(比较表达式)) // 他会判断括号内的条件是否 ...
随机推荐
- cobub razor 安装及使用
server端安装及配置 apache2 + Mysql5.7 + php7 + redis 参见:http://docs.cobub.com/pages/viewpage.action?pageId ...
- appium定位之xpath定位
前面也说过appium也是以webdriver为基的,对于元素的定位也基本一致,只是增加一些更适合移动平台的独特方式,下面将着重介绍xpath方法,这应该是UI层元素定位最强大的方法啦! 以淘宝app ...
- Java学习笔记49(DBUtils工具类二)
上一篇文章是我们自己模拟的DBUtils工具类,其实有开发好的工具类 这里使用commons-dbutils-1.6.jar 事务的简单介绍: 在数据库中应用事务处理案例:转账案例 张三和李四都有有自 ...
- 学生管理系统(springMVC)
<Java Web编程>课程设计 ...
- jdk的安装和配置环境变量
一.下载 JDK是个免费的东东,所以大家不要去百度啥破解版了,直接去官网下载最新版本吧,比较安全,官网地址:http://www.oracle.com/technetwork/java/index.h ...
- Python九九乘法表三种方案
方法一: row = 1 # 定义起始行 while row <= 9: # 最大打印 9 行 col = 1 # 定义起始列 while col <= row: # 最大打印 row 列 ...
- Base 64 加密、解密
1.写一个公共类 package com.boyutec.oss.sys.utils; import java.io.UnsupportedEncodingException; import java ...
- docker的安装与启动
安装docker Docker官方建议在Ubuntu中安装,因为Docker是基于Ubuntu发布的,而且一般Docker出现的问题Ubuntu是最先更新或者打补丁的.在很多版本的CentOS中是不支 ...
- 测试工具之RobotFramework关键字和快捷键
RF中关键字很多,即使经常使用也有些关键字没有使用过,所以我们就需要记住一些常用的关键字,在使用中本人整理了部分关键字.快捷键和部分RF的常识 1.F5 如果只记得关键字部分,可以通过F5呼出关键字查 ...
- [Umbraco] umbraco中如何分页
分页功能应该说是web开发中最基本的功能了,常规的做法是通过查询sql语句进行分页数据显示.但在umbraco中却不是这样子的.而且通过xpath中的postion来定位.如下代码 <?xml ...