【2017-2-21】C#分支语句,分支嵌套,变量的作用域
分支语句
句式:if else(必须是if开头,可以是else if或者else结束,也可以直接结束)
if(bool型比较表达式)
{
如果上面的条件成立,则执行这里面的代码
}
else if(bool型比较表达式)
{
如果上面的条件成立,则执行这里面的代码
}
else(必须为空,不能写比较表达式)//只要上面条件都不成立,那么必走else里的代码
{
}
每一行最左侧红点称为断点,选中后表示即将执行本行代码;可以配合逐语句查看每一行代码的执行情况;
多个if从句之间为并列关系;
如果if,else if,else里面只有一句代码,则可以省略{};
新建一个随机变量
Random x=new Random();
int a=x.Next(0,n)
表示从0到n-1这n个数中随机抽取一个
Console.Write("请输入您的手势 (石头/剪子/包袱)");
string gesture = Console.ReadLine();
int user;
if (gesture=="石头")
{
user = ;
}
else if (gesture == " 剪子")
{
user = ;
}
else
{
user = ;
}
Random r = new Random();
int cp = r.Next(,);
if (user == cp)
{
Console.WriteLine("平局");
}
else if (user == cp + || user == cp - )
{
Console.WriteLine("电脑赢了");
}
else
{
Console.WriteLine("用户赢了");
}
Console.ReadLine();
分支嵌套
在if或者else if执行代码段里面继续插入if else分支语句;
表示满足该条件的状况下,继续进行其他条件的判断;
作用域
在main函数中,对象的作用域为他所在的最近的一对花括号内;
同一个作用域里面,不能重复定义同一个变量;
练习题1:
“请输入年份:”(1-9999)
“请输入月份:”(1-12)
“请输入日期:”(要判断大小月,判断闰年)
判断输入的时间日期是否正确
Console.Write("请输入年份:");
int year = Convert.ToInt32(Console.ReadLine());
if (year <= || year > )
{
Console.Write("您输入的年份有误");
}
else
{
Console.Write("请输入月份:");
int month = Convert.ToInt32(Console.ReadLine());
if (month < || month >)
{
Console.Write("您输入的月份有误");
}
else
{
Console.Write("请输入日期:");
int day = Convert.ToInt32(Console.ReadLine());
if (day > ||day<)
{
Console.Write("您输入的日期有误");
}
else if ((month == || month == || month == || month == || month == || month == || month == ) && (day > && day <= ))
{
Console.WriteLine("您输入的日期正确");
}
else if ((month == || month == || month == || month == ) && (day > && day <= ))
{
Console.WriteLine("您输入的日期正确");
}
else if(year % == && year % != || year % == )
{
if(month == && (day > && day <= ))
{
Console.WriteLine("您输入的日期正确");
}
else
{
Console.WriteLine("您输入的日期有误");
}
}
else
{
if(month == && (day > && day < ))
{
Console.WriteLine("您输入的日期正确");
}
else
{
Console.WriteLine("您输入的日期有误");
}
}
}
}
Console.ReadLine();
练习题2:
标准体重
男士体重 = 身高 - 100 +-3
kg cm
女士体重 = 身高 - 110 +-3
Console.WriteLine("标准体重");
Console.WriteLine("男士体重(kg)=身高(cm)-100+-3");
Console.WriteLine("女士体重(kg)=身高(cm)-110+-3");
Console.Write("请输入您的性别:");
string sex = Console.ReadLine();
Console.Write("请输入您的身高:");
int height = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入您的体重:");
int weight = Convert.ToInt32(Console.ReadLine());
if (sex == "男")
{
if (height - weight - <= && height - weight - >= -)
{
Console.WriteLine("恭喜您属于标准体重!");
}
else
{
Console.WriteLine("不好意思,您未达到标准体重!");
}
}
else
{
if (height - weight - <= && height - weight - >= -)
{
Console.WriteLine("恭喜您属于标准体重!");
}
else
{
Console.WriteLine("不好意思,您未达到标准体重!");
}
}
Console.ReadLine();
【2017-2-21】C#分支语句,分支嵌套,变量的作用域的更多相关文章
- python with语句中的变量有作用域吗?
一直以为python中的with语句中的变量,只在with语句块中起作用.不然为什么要缩进一个级别呢? 呵呵,然而并没有为with语句内的变量创建新的作用域. 举例: # test.py with o ...
- 【java开发】分支语句、循环语句学习
一.Java分支语句类型 if-else 语句 switch 关于if-esle语句可以拆分为三种 if语句 if(条件){语句块;} if-else语句if(条件语句){语句块;} if-else ...
- js分支语句
一.逻辑分支(选择结构,分支结构) 其实今天的课程才算开始涉及到逻辑 程序的三大结构 顺序结构 - 每天 代码逐行执行,一行一行自上而下执行 分支结构 有选择了,十字路口的选择,只能选择一个,如果.. ...
- 分支语句 if的嵌套 循环语句
0930 今天学习内容做以下总结: 语句的分类:顺序语句,分支语句(选择,条件),循环语句 分支语句 格式1:if(表达式(要么是true 要么是false)){} 格式2:if(){}slse{} ...
- 【2017-02-21】分支语句if...else...、分支嵌套、变量的作用域
语句是指程序命令,都是按照顺序执行的. 语句又分为: 顺序语句:从上到下按顺序执行,挨个执行一遍. 分支语句:选择性执行语句,有的可能会执行,有的可能不执行.满足条件执行. 循环语句: 一.分支语句 ...
- 关于c#分支语句和分支嵌套还有变量的作用域。
分支语句: if....else if....else 必须以 if 开头 后面加括号写入需要判断的内容. 举个栗子说明一下 if (bool类型(比较表达式)) // 他会判断括号内的条件是否 ...
- python的分支语句与循环
一.分支语句 1.if else语句 语法: if 条件判断: 执行的语句块1 else : 执行语句块2 当满足条件的时候则执行语句块1 ,不满足条件就执行语句块2 注意:1.条件判断后面要加冒号& ...
- 语句:分支语句、switch case ——7月22日
语句的类型包括:声明语句.表达式语句.选择语句.循环语句.跳转语句.异常语句 1.声明语句引:入新的变量或常量. 变量声明可以选择为变量赋值. 在常量声明中必须赋值. 例如: int i = 0;// ...
- js部分---运算符,if分支语句,for循环;switch case 的用法;
------------------------------------------运算符---------------------------------------------------- *数 ...
随机推荐
- 【PyQt5-Qt Designer】日历(QCalendarWidget)
日历(QCalendarWidget)+爬虫API调用+自定义发送信号(传入2个参数) 总体介绍 QCalendarWidget类提供了一个基日历小部件,允许用户选择一个日期. 该小部件使用当前的月份 ...
- ef codefirst 模型字段类型与sqlserver表字段类型对应概要
1.sqlserver中nvarchar(50),对应EF中: [MaxLength(, ErrorMessage = "最大长度为{1}")] public string Nam ...
- oracle中并行执行不一定比串行执行快
并行执行与串行执行相比,能否缩短执行时间,取决于如下几个方面:1.待执行的目标SQL是否适合并行执行,有些SQL是不太适合并行执行的,比如走索引的嵌套循环连接.2.数据库服务器上的硬件资源(如CPU. ...
- 基于jQuery实现的Ajax 验证用户名唯一性
基于jQuery实现的Ajax 验证用户名唯一性 前端jsp页面代码 <tr> <th><span class="requiredField"> ...
- 关于Mysql 的 ICP、MRR、BKA等特性
一.ICP( Index_Condition_Pushdown) 对 where 中过滤条件的处理,根据索引使用情况分成了三种:(何登成)index key, index filter, table ...
- JAVA四大域对象总结
根据有作用范围由小到大: page(jsp有效)------>page域指的是pageContext. request(一次请求)--->request域request HttpServl ...
- git push error:error: insufficient permission for adding an object to repository database ./object解决
在服务器代码库xxx.git文件夹中:1.sudo chmod -R g+ws *2.sudo chgrp -R mygroup * //mygroup是该文件夹的所有组3.git repo-conf ...
- 原生js可视加载图片、延迟加载、懒加载
<script> //既视加载//var oBtn = document.getElementsByTagName('button')[0];var aImages = document. ...
- finecms如何批量替换文章中的关键词?
Finecms批量替换文章关键词要怎么操作呢,比如把关键词A换为B?Finecms是免费开源无商业限制的内容管理系统,个人在维护,但二次开发很灵活,我们可以通过开发插件或数据库sql语句来操作,下面就 ...
- python接口测试-充值
import requests import json import unittest import HTMLTestRunner telphone =18200717087 #参数化手机号码 ur1 ...