关于c#分支语句和分支嵌套还有变量的作用域。
分支语句: if....else if....else
必须以 if 开头 后面加括号写入需要判断的内容。
举个栗子说明一下
if (bool类型(比较表达式)) // 他会判断括号内的条件是否成立
{
如果上面的条件成立,那么会执行这里面的代码,输出结果
}
else if (bool类型 (比较表达式))// 如果上一个 if 的条件不成立会 向下判断这里的条件是否成立,如果上一条成立的则不会判断这一条。
{
走这里的代码
}
else //只要上面条件都不成立,那么必走else里的代码// 如果上面的条件都不成立会直接走这一条。else后面不能写条件
{
走这里的代码并输出结果
}
else 对应的是它上面的第一个 if , 就像下面这个
if (条件)// 这里判断条件
{
}
else if(条件)// 如果不满足上一条走这里
{
}
if (条件1)// 这是又一个条件
{
}
else// 这里else 对应的是上面条件1的 if ,就是如果不满足 条件1 ,就会来执行else。
{
}
如果第一个 if 满足了会跳过else if 但是遇到if 就会进行判断,如果不满足条件1,那么就会判断最后的else。
如果想让else判断第一个if和else if都不满足之后的条件,就要把 if(条件1)去掉或者放掉else if 的上面。
附上一个练习题
“请输入年份:”(1-9999)
“请输入月份:”(1-12)
“请输入日期:”(要判断大小月,判断闰年)
判断输入的时间日期是否正确
Console.Write("请输入年份:");
int nianfen = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入月份:");
int yuefen = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入日期:");
int riqi = Convert.ToInt32(Console.ReadLine());
if ( <= nianfen && nianfen <= )//年份输入1-9999
{
if (nianfen % == && nianfen % != || nianfen % == )//如果是闰年
{
if (yuefen == )//若等是二月份
{
if (riqi >= && riqi <= )//如果有29号
{
Console.Write("正确");
}
else
{
Console.Write("错误");
}
}
else if (yuefen == || yuefen == || yuefen == || yuefen == )//如果是偶数月
{
if (riqi >= && riqi <= )
{
Console.Write("正确");
}
else
{
Console.Write("错误");
}
}
else//如果是奇数月
{
if (riqi >= && riqi <= )
{
Console.Write("正确");
}
else
{
Console.Write("错误");
}
}
}
else if (nianfen>=&&nianfen<=) //如果不是闰年,
{
if (yuefen == && riqi > )
{
Console.Write("错误");
}
if (yuefen == )//如果是二月
{
if (riqi >= && riqi <= )
{
Console.Write("正确");
}
}
else if (yuefen == || yuefen == || yuefen == || yuefen == )//如果是偶数月
{
if (riqi >= && riqi <= )
{
Console.Write("正确");
}
else
{
Console.Write("错误");
}
}
else//如果是奇数月
{
if (riqi >= && riqi <= )
{
Console.Write("正确");
}
else
{
Console.Write("错误");
}
}
}
}
else
{
if (yuefen < || yuefen > ||nianfen<||nianfen>||riqi<||riqi>)
{
Console.Write("NO");
}
}
Console.ReadLine();
这里再补充一个分支语句
switch(变量)
{
case 值:代码段;break;(break是跳出的意思)
case 值:代码段;break;
...
...
...
default:代码段;break;
(default可有可无,对应else)
}
这个分支语句比较小众,还是if····else···用得比较多。但是必须要认识。
关于c#分支语句和分支嵌套还有变量的作用域。的更多相关文章
- 【2017-02-21】分支语句if...else...、分支嵌套、变量的作用域
语句是指程序命令,都是按照顺序执行的. 语句又分为: 顺序语句:从上到下按顺序执行,挨个执行一遍. 分支语句:选择性执行语句,有的可能会执行,有的可能不执行.满足条件执行. 循环语句: 一.分支语句 ...
- 分支语句 if的嵌套 循环语句
0930 今天学习内容做以下总结: 语句的分类:顺序语句,分支语句(选择,条件),循环语句 分支语句 格式1:if(表达式(要么是true 要么是false)){} 格式2:if(){}slse{} ...
- 【2017-2-21】C#分支语句,分支嵌套,变量的作用域
分支语句 句式:if else(必须是if开头,可以是else if或者else结束,也可以直接结束) if(bool型比较表达式) { 如果上面的条件成立,则执行这里面的代码 } else if(b ...
- C# 语句 分支语句 switch----case----.
第二种分支语句 switch..case. switch(一个变量){ case 值:要执行的代码段;break; case 值:要执行的代码段;break; ... ... ... default ...
- shell编程之case分支语句
shell编程之case分支语句 case分支语句和if的多分支语句很相似. if多分支语句一般用在有(区间范围)的地方 :例如:0-100之间. if需要判断多个不同的条件. case的分支语句用在 ...
- JS基础语法---分支语句之:switch-case语句---3个练习
switch-case语句---分支语句---多分支语句 语法: switch(表达式){ case 值1:代码1;break; case 值2:代码2;break; case 值3:代码3;brea ...
- 【java开发】分支语句、循环语句学习
一.Java分支语句类型 if-else 语句 switch 关于if-esle语句可以拆分为三种 if语句 if(条件){语句块;} if-else语句if(条件语句){语句块;} if-else ...
- 语句:分支语句、switch case ——7月22日
语句的类型包括:声明语句.表达式语句.选择语句.循环语句.跳转语句.异常语句 1.声明语句引:入新的变量或常量. 变量声明可以选择为变量赋值. 在常量声明中必须赋值. 例如: int i = 0;// ...
- js部分---运算符,if分支语句,for循环;switch case 的用法;
------------------------------------------运算符---------------------------------------------------- *数 ...
随机推荐
- linux服务器版svn安装
1.检查svn是否安装:rpm -aq subversion2.安装命令yum -y install subversion3.建立svn版本库数据存储根目录mkdir -p /application/ ...
- [1]移动端页面调试之“weinre大法”
前言 这个也是从早读课转载的.如有侵权请联系我马上下架. 正文从这开始-- 移动端页面调试一般分两步.第一步我们需要把本地(pc端)写的页面效果展现在移动端,一个很方便的办法是用 fiddler 作为 ...
- 分布式_事务_01_2PC框架raincat快速体验1
一.前言 关于2PC的理论知识请见:分布式_理论_03_2PC 这一节我们来看下github上一个优秀的2PC分布式事务开源框架的快速体验. 二.源码 源码请见: https://github.com ...
- c++引用和指针的实现
引用和指针有什么区别?引用在进程中是否会分配内存? C++ primer中说: 引用就是对象的另一个名字. C++ primer中说: 指针用于指向对象,保存的是另一个对象的地址. 从字面意义上,感觉 ...
- WC2019 滚粗记
离开的时候一定是笑着离开的 不然就再也回不来了 广州二中,七月再见
- C# Winform中窗体的美化—— 用IrisSkin轻松实现换肤功能
今天经前辈提醒才知道winform窗体还有美化工具,呵呵,不得不说,孤陋寡闻了.下面总结一下irisskin2的使用步骤和遇到的问题及解决办法. 1.网址:http://www.pc6.com/sof ...
- QString字符串拼接【转载】
原文网址:http://www.cnblogs.com/ftrako/p/3481571.html for(intloop=1;loop<2;loop++) { QStringtest1=QSt ...
- MySQL最新版本 MySQL5.7.11 批量自动化一键式安装(转)
--背景云端 以前都喜欢了源码安装MySQL,总觉得源码是高大上的事情,不过源码也需要时间,特别是make的时候,如果磁盘和cpu差的话,时间很长很长,在虚拟机上安装mysql尤其甚慢了. 现在业务发 ...
- 机器学习:PCA(基础理解、降维理解)
PCA(Principal Component Analysis) 一.指导思想 降维是实现数据优化的手段,主成分分析(PCA)是实现降维的手段: 降维是在训练算法模型前对数据集进行处理,会丢失信息. ...
- PhoneGap应用图标icon和启动页面SplashScreen
app/config.xml <icon gap:platform="android" gap:qualifier="ldpi" src="re ...