C++选择结构.doc
文本预览下载声明
先在D盘建立“my”文件夹,再在其中建立若干子文件夹“1、2、3……”;
打开“我的电脑”,在地址栏输入
HYPERLINK 42:8080 42:8080
单击“文件”菜单下的“登录…”,依次输入用户名和密码: sly
打开“C++”文件夹?“作业要求”,将其中的作业要求文件或“直接打开”或复制到桌面后再打开,按要求完成上机作业即可。
#include iostream
#include cmath
using namespace std;
void main()
{float s,a,b,c,area;
cout请输入三角形三边,大于0:endl;
cinabc;
bool sbgx;
sbgx=a+bcb+cac+ab;
s=(a+b+c)/2;
area=sbgx==true?sqrt(s*(s-a)*(s-b)*(s-c)):-1;
area0?coutarea:cout读入错误!;
}
当某关系表达式“sbgx==true”,其逻辑等价式为“sbgx”。
记住两组逻辑等价式:
逻辑量A式子1:A逻辑等价式:A!=false
或 A==truetrue T Tfalse F F逻辑量A式子2:!A逻辑等价式:A==false
或 A!=truetrue F Ffalse T T【记住】当把下列各式当做逻辑值用时:
数值型数据B B 逻辑等价式: B!=00false F非0true T数值型数据B !B逻辑等价式: B==00 T T非0 F F
【基本算法:两数交换借助第三数。】
题目1:任意读入2个整数,然后按从小到大的顺序输出这两个数。
#include iostream //法1
using namespace std;
void main()
{int a,b;
cinab;
ab?couta,b:coutb,a;
}
//法2:让a中放较小数、b中放较大数
#include iostream
using namespace std;
void main()
{int a,b;
cinab;
int t; //中间变量
ab?(t=a,a=b,b=t):(a=a,b=b);
couta,bendl;
}
【算法解释:“t=a,a=b,b=t”,即可借助t,将a和b的值交换。】
选择结构
一、单分支选择语句
1. 格式
if(表达式) 语句
2. 功能
当表达式的值为非0或true时,执行“语句”。否则执行if之后的下一句。
而表达式非0或true即表示“条件成立”。
3. 说明
(1)表达式通常是关系或逻辑表达式。也可以是数值型的常量或变量、表达式。
(2)表达式外的( )不可以省!
(3)“语句”可以是以分号结束的单个语句,也可以是一个复合语句。不可以是多个语句。
4. 举例
改写前例:任意读入2个整数,按从小到大的顺序输出这两个数。
#include iostream
using namespace std;
void main()
{int a,b;
cinab;
int t; //中间变量
if(ab)
{t=a; a=b; b=t;}
couta,bendl;
}
【思考:改成3个数,怎么办?】
例2、任意读入2个整数,输出较大数。
#include iostream
using namespace std;
void main()
{int a,b;
cinab;
if(a=b) coutaendl;
if(ba) coutbendl;
}
二、双分支if语句
【格式】
if(表达式)
语句1
else
语句2
【功能】
【说明】
1.“语句1”和“语句2”可以分别是以分号结束的单个语句,也可以分别是一个复合语句。都不可以是多个语句。
2. else子句不可以独立存在。
改写例2:
#include iostream
using namespace std;
void main()
{int a,b;
cinab;
if(ab) coutaendl;
else coutbendl;
}
例3、编程完成如下:任意读入一个年份,判断其是否为闰年。
(凡是能被400整除,或能被4整除且不能被100整除,都是闰年。)
【法一:用双分支if语句完成】
#include iostream
using namespace std;
void main()
{int y;
cout请输入年份:endl;
ciny;
if(
显示全部