if嵌套c语言if语句多层嵌套的语法结构是什么

&&/&&&&/&&&&/&&&&/&&
if语句的3种形式
1) if(表达式) 语句。
& & if(x&y) cout&&x&&
这种if语句的执行过程见图3.5(a)。
2) if(表达式) 语句1 else 语句2
& & if (x&y) cout&&x;
& & else& cout&&y;
见图3.5(b)。
3) if(表达式1) 语句1
& & else if(表达式2) 语句2
& & else if(表达式3) 语句3
& & else if(表达式m) 语句m
& & else& 语句n
(number&500) cost=0.15;
else if(number&300) cost=0.10;
else if(number&100) cost=0.075;
else if(number&50) cost=0.05;
else cost=0;
流程图见图3.6。
从图3.5和图3.6可以看到: 3种形式的if语句都是由一个入口进来,经过对&表达式&的判断,分别执行相应的语句,最后归到一个共同的出口。这种形式的程序结构称为选择结构。在C++中if语句是实现选择结构主要的语句。
3种形式的if语句中在if后面都有一个用括号括起来的表达式,它是程序编写者要求程序判断的&条件&,一般是逻辑表达式或关系表达式。
第2、第3种形式的if语句中,在每个else前面有一分号,整个语句结束处有一分号。
在if和else后面可以只含一个内嵌的操作语句(如上例),也可以有多个操作语句,此时用花括号&{}&将几个语句括起来成为一个复合语句。
【例3.6】求三角形的面积。
#include &iostream&
#include &cmath& //使用数学函数时要包含头文件cmath
#include &iomanip&
//使用I/O流控制符要包含头文件iomanip
int main( )
double a,b,c;
cout&&&please enter a,b,c:&;
cin&&a&&b&&c;
if (a+b&c && b+c&a && c+a&b)
//复合语句开始
double s,//在复合语句内定义变量
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
cout&&setiosflags(ios::fixed)&&setprecision(4); //指定输出的数包含4位小数
cout&&&area=&&&area&&
//在复合语句内输出局部变量的值
} //复合语句结束
else cout&&&it is not a trilateral!&&&
运行情况如下:
please enter a,&b,&c:2.45 3.67 4.89L
area=4.3565
变量s和area只在复合语句内用得到,因此在复合语句内定义,它的作用范围为从定义变量开始到复合语句结束。如果在复合语句外使用s和area,则会在编译时出错,系统认为这两个变量未经定义。将某些变量局限在某一范围内,与外界隔离,可以避免在其他地方被误调用。
if语句的嵌套
在if语句中又包含一个或多个if语句称为if语句的嵌套。一般形式如下:
& & & & if( )语句1
& & & & else 语句2
& & & & if( )语句3
& & & & else 语句4
应当注意if与else的配对关系。else总是与它上面最近的、且未配对的if配对。假如写成:
& & & & if( )语句1
& & & & if( )语句2
& & & & else 语句3
编程序者把第一个else写在与第一个if(外层if)同一列上,希望else与第一个if对应,但实际上else是与第二个if配对,因为它们相距最近,而且第二个if并未与任何else配对。为了避免误用,最好使每一层内嵌的if语句都包含else子句(如本节开头列出的形式),这样if的数目和else的数目相同,从内层到外层一一对应,不致出错。
如果if与else的数目不一样,为实现程序设计者的企图,可以加花括号来确定配对关系。例如:
& & & & if ( ) 语句1
& & } //这个语句是上一行if语句的内嵌if
& & else 语句2//本行与第一个if配对
这时{ }限定了内嵌if语句的范围,{ }外的else不会与{ }内的if配对。关系清楚,不易出错。2013年3月 总版技术专家分月排行榜第三
2014年5月 移动开发大版内专家分月排行榜第一2014年4月 移动开发大版内专家分月排行榜第一
2016年10月 .NET技术大版内专家分月排行榜第一2016年8月 .NET技术大版内专家分月排行榜第一2016年7月 .NET技术大版内专家分月排行榜第一
2016年12月 .NET技术大版内专家分月排行榜第二2016年9月 .NET技术大版内专家分月排行榜第二2016年6月 .NET技术大版内专家分月排行榜第二2016年3月 .NET技术大版内专家分月排行榜第二2016年1月 .NET技术大版内专家分月排行榜第二2015年12月 .NET技术大版内专家分月排行榜第二2015年2月 .NET技术大版内专家分月排行榜第二2015年1月 .NET技术大版内专家分月排行榜第二2014年11月 .NET技术大版内专家分月排行榜第二2014年5月 .NET技术大版内专家分月排行榜第二2014年4月 .NET技术大版内专家分月排行榜第二2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
2016年10月 .NET技术大版内专家分月排行榜第一2016年8月 .NET技术大版内专家分月排行榜第一2016年7月 .NET技术大版内专家分月排行榜第一
2016年12月 .NET技术大版内专家分月排行榜第二2016年9月 .NET技术大版内专家分月排行榜第二2016年6月 .NET技术大版内专家分月排行榜第二2016年3月 .NET技术大版内专家分月排行榜第二2016年1月 .NET技术大版内专家分月排行榜第二2015年12月 .NET技术大版内专家分月排行榜第二2015年2月 .NET技术大版内专家分月排行榜第二2015年1月 .NET技术大版内专家分月排行榜第二2014年11月 .NET技术大版内专家分月排行榜第二2014年5月 .NET技术大版内专家分月排行榜第二2014年4月 .NET技术大版内专家分月排行榜第二2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
2016年10月 .NET技术大版内专家分月排行榜第一2016年8月 .NET技术大版内专家分月排行榜第一2016年7月 .NET技术大版内专家分月排行榜第一
2016年12月 .NET技术大版内专家分月排行榜第二2016年9月 .NET技术大版内专家分月排行榜第二2016年6月 .NET技术大版内专家分月排行榜第二2016年3月 .NET技术大版内专家分月排行榜第二2016年1月 .NET技术大版内专家分月排行榜第二2015年12月 .NET技术大版内专家分月排行榜第二2015年2月 .NET技术大版内专家分月排行榜第二2015年1月 .NET技术大版内专家分月排行榜第二2014年11月 .NET技术大版内专家分月排行榜第二2014年5月 .NET技术大版内专家分月排行榜第二2014年4月 .NET技术大版内专家分月排行榜第二2012年2月 多媒体/设计/Flash/Silverlight 开发大版内专家分月排行榜第二
2013年 总版技术专家分年内排行榜第一
2014年 总版技术专家分年内排行榜第三
本帖子已过去太久远了,不再提供回复功能。&Java If语句使用格式3-if嵌套语句
Java If语句使用格式3-if嵌套语句
视频太卡?试试切换线路
本课时学习Java if语句的用法,包括if循环语句、if条件语句、if判断语句,了解Java if语句的格式使用。
本课时学习Java if else语句的用法及使用格式。
本课时讲解if else if循环嵌套语句的用法及格式。
本科是通过实例,即键盘输入Java Android sql三科分数,找出最高分,掌握if语句常见算法。
本课时通过实例,即利用选择法找出三科分数最高分,学习java if语句中常见if语句算法。
只有成为VIP会员才能提问&回复,快吧!如果你还没有账号你可以一个账号。
添加新技术问题
课程 [Java If语句使用格式3-if嵌套语句]
中已存在问题
添加新技术问题
问题描述越详细,被解答的速度越快
有新回答时请邮件提醒我
着急,拜托快点
不急,慢慢解决
关联课程 [Java If语句使用格式3-if嵌套语句]
服务热线:400-678-82664409人阅读
精典示例——if语句嵌套
精典示例1——提示用户名名和密码是否正确
&&& 例1:提示用户输入用户名,然后再提示输入密码。如果用户名是&admin&并且密码是“888888”则提示正确,否则提示错误,如果用户名不是admin还提示用户名不存在。
&&& 写法1:
namespace 布尔表达式
class Program
static void Main(string[] args)
//提示用户输入用户名,然后再提示输入密码,如果用户名是&admin&并且密码是“888888”则提示正确,否则提示错误。如果用户名不是admin还提示用户名不存在。
Console.WriteLine(&请输入用户名:&);
string userName = Console.ReadLine();
Console.WriteLine(&请输入密码:&);
string passWord = Console.ReadLine();
if (userName == &admin& && passWord == &888888&)
Console.WriteLine(&用户名和密码输入正确!&);
Console.WriteLine(&用户名、密码错误!&);
if (userName != &admin&)
Console.WriteLine(&用户名不存在!&);
Console.ReadKey();
&&& 写法2:
namespace 布尔表达式
class Program
static void Main(string[] args)
//提示用户输入用户名,然后再提示输入密码,如果用户名是&admin&并且密码是“888888”则提示正确,否则提示错误。如果用户名不是admin还提示用户名不存在。
Console.WriteLine(&请输入用户名:&);
string userName = Console.ReadLine();
Console.WriteLine(&请输入密码:&);
string passWord = Console.ReadLine();
if (userName == &admin& && passWord == &888888&)
Console.WriteLine(&用户名和密码输入正确!&);
if (userName != &admin&&&passWord==&888888&)
Console.WriteLine(&此用户名不存在!&);
if (userName==&admin&&&passWord != &888888&)
Console.WriteLine(&密码不正确!&);
Console.WriteLine(&用户名和密码都不正确!&);
Console.ReadKey();
用户名(admin)
密码(888888)
用户名和密码输入正确!
密码不正确!
此用户名不存在!
用户名和密码都不正确!
精典示例2——提示用户名输入年龄,判断是否允许查看
&&&&练习2:提示用户输入年龄.如果大于等于18.则告知用户可以查看.如果小于10岁,则告知不允许查看.如果大于等于10岁.则提示用户是否继续查看 (yes、no)·如果输入 的是yes则提示用户可以查看,否则提示不可以查看。(测试边界条件,-1,,aaaa。微软如狼似虎的Tester)
&& 提示信息
&&&&&&&&&&&&&&&&&& age&=18
&&&&&&&&&&&&&&&&& 可以查看&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&& age&10
&&&&&&&&&&&&&&&& 不允许查看&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& &yes
&&&&&&&age&=10&&&&&& &no
&&&&&&&&&&&&&&&&&&&&&&& 输入其它
& 继续查看
&&&&& 不继续查看
&& 输入错误
代码示例:
namespace 布尔表达式
class Program
static void Main(string[] args)
//提示用户输入年龄.如果大于等于18.则告知用户可以查看.如果小于10岁,则告知不允许查看.如果大于等于10岁.则提示用户是否继续查看 (yes、no)·如果输入 的是yes则提示用户可以查看,否则提示不可以查看。
Console.WriteLine(&请输入年龄:&);
string strAge = Console.ReadLine();
int age = Convert.ToInt32(strAge);
if (age&=18)
Console.WriteLine(&可以查看&);
else if (age & 10)
Console.WriteLine(&不允许查看&);
//前两个条件已经将其他情况排除,所以不用再写else if(age&=10)
Console.WriteLine(&是否继续查看(yes、no)?&);
string isContinue=Console.ReadLine();
if (isContinue==&yes&)
Console.WriteLine(&继续查看&);
else if (isContinue == &no&)
Console.WriteLine(&不继续查看&);
Console.WriteLine(&输入错误!&);
Console.ReadKey();
总结,上面的两个例子主要练习的是:
if语句的嵌套
变量名命名要用有意义的变量名(如例中的变量名strAge,isContinue)。
测试程序,每种分支都要测试一遍。
写注释(关键地方),这样代码看起来很清淅,易于别人读懂。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:330124次
积分:5126
积分:5126
排名:第4335名
原创:136篇
评论:746条
(2)(3)(4)(1)(4)(3)(4)(2)(4)(4)(1)(4)(4)(4)(4)(4)(4)(4)(5)(4)(4)(4)(3)(4)(4)(4)(4)(5)(20)(4)(4)(5)(2)(1)(1)[原创]EXCEL软件中多重嵌套IF语句的用法
EXCEL里面的IF语句可用于对条件进行判断,并对满足一定条件的情况执行相应的操作。对多重嵌套IF语句,其语法相当于IF-ELSE
IF-ELSE IF-ELSE-END IF结构,但在具体写法上又与传统的程序不太一样。
若判断条件不超过8个,也即嵌套层数≤7,则可采用下面比较原始的形式。
=IF(F3=0,程序说明!$C$4,IF(F3=1,程序说明!$C$5,IF(F3=2,程序说明!$C$6,IF(F3=3,程序说明!$C$7,IF(F3=4,程序说明!$C$8,IF(F3=5,程序说明!$C$9,IF(F3=6,程序说明!$C$10,IF(F3=7,程序说明!$C$11,程序说明!$C$12))))))))
上面的例子中,F3对应值即为IF条件式,“程序说明!$C$4”是条件对应的执行操作,后类同(上语句为笔者判断河床形状(bedform)的IF语句;
形式Ⅱ:采用LOOKUP函数实现
=LOOKUP(F3,{0,1,2,3,4,5,6,7,8},{"NON","平坦河床","沙纹","沙垄","过渡区","平整","驻波","逆行沙垄","急滩深潭"})
比较两种形式可以发现,LOOKUP在结构上更为简洁,实现方便。另外,LOOKUP对嵌套层数没有限制,而上述IF语句则要求不能超过7层。
对于含if(and)语句的情况,简单的为:
形式Ⅰ:
=IF(AND(B1&-0.15,B1&0.1),"EXPR1","EXPR2")
形式Ⅱ:
=IF(AND(B1&-0.15,B1&0.1),"A",IF(AND(B1&=0.1,B1&=0.2),"B",IF(AND(B1&0.2,B1&0.3),"C",IF((B1&0.3),"D1","D2"))))
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。}

我要回帖

更多关于 html嵌套php if语句 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信