Visual C++ 6.0教程:控制结构之分支结构
分支结构
分支结构是根据某个条件来执行某些代码。它是通过条件语句来实现的。在C++中,条件语句包括两条:if语句和switch语句。
1.if语句
if语句支持3种格式,分别是:
本教程来自网站源代码http://www.isstudy.com 如果转载,请注明出处。
第1种
if (<表达式1>)
<语句块>
其中,当<表达式1>为真时,执行<语句块>。
第2种
if (<表达式1>)
<语句块1>
else
<语句块2>
l 第3种
if(<表达式1>)
<语句块1>
else if(<表达式2>)
<语句块2>
else if(<表达式3>)
<语句块3>
…
else if(<表达式n>)
<语句块n>
else
<语句块n+1>
第2种和第3种格式表示一种非此即彼的情况,如果表达式的值为真,执行if后面的语句;如果表达式的值为假,执行else后面的语句。两条语句不会同时执行。
请看下面的实例,判断数值的奇偶:
#include "iostream.h"
int main()
{
int nNumber;
cout<<"请输入一个数值:";
cin>>nNumber;
if(nNumber%2!=0) //使用求余运算符% //使用 if 语句
cout<else
cout<}
运行结果如图1所示。

图1 代码执行结果
2.switch语句
switch用于实现多分支结构,它的一般形式如下:
switch(表达式)
{
case <常量表达式1>:
<语句块1>
break;
case <常量表达式2>:
<语句块2>
break;
…
case <常量表达式n>:
<语句块n>
break;
default:
<语句块n+1>
}
执行switch语句时会将其中表达式的值与一些常量表达式进行比较,当某case语句中常量表达式与该表达式相等时,就执行该case语句后的语句块。当遇到break时,会退出switch结构。
请看下面的实例,将阿拉伯数字对应的大写汉字输出:
#include "iostream.h"
#include "string.h"
int main()
{
int nNumber;
cout<<"请输入一个阿拉伯数字:";
cin>>nNumber;
char str[]={"零"};
switch(nNumber) //使用switch 语句
{
case 0:
{
strcpy(str,"零");
break;
}
case 1:
{
strcpy(str,"壹");
break;
}
case 2:
{
strcpy(str,"贰");
break;
}
case 3:
{
strcpy(str,"叁");
break;
}
case 4:
{
strcpy(str,"肆");
break;
}
case 5:
{
strcpy(str,"伍");
break;
}
case 6:
{
strcpy(str,"陆");
break;
}
case 7:
{
strcpy(str,"柒");
break;
}
case 8:
{
strcpy(str,"捌");
break;
}
case 9:
{
strcpy(str,"玖");
break;
}
default:
{
cout<<"输入错误!";
return;
}
}
cout<}
本教程来自网站源代码http://www.isstudy.com 如果转载,请注明出处。
程序运行结果如图2所示。

图2 程序运行结果