高中信息竞赛-选择语句.ppt_第1页
高中信息竞赛-选择语句.ppt_第2页
高中信息竞赛-选择语句.ppt_第3页
高中信息竞赛-选择语句.ppt_第4页
高中信息竞赛-选择语句.ppt_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C+程序设计,【例题题目】求三角形的面积 【问题描述】编一程序,输入三角形的三边a、b、c(假设这三边可以构成一个三角形),求三角形的面积? 【文件输入】输入三角形的三边a、b、c(都为整数= 1000) 【文件输出】输出三角形的面积(保留两位小数)。 【样例输入】3 4 5 【样例输出】6,练习试题:,#include #include #include /使用了开平方函数sqrt using namespace std; int main() long a,b,c; double p,s; cinabc; p=(double)(a+b+c)/2; s=sqrt(p*(p-a)*(p-b)*(p-c); coutfixedsetprecision(2)sendl; system(“pause“); return 0; ,参考程序,选择结构程序设计,1、关系运算符:(比较运算) (大于) = (大于等于) = = (等于) != (不等于) 注 意: (1) = = 与 =(a=5; 赋值运算; a= =5;判断是否相等) (2) = 的优先级大于= = != (3)算术运算符的优先级高于关系运算符的优先级; 关系运算符的优先级高于赋值运算符的优先级; 如:ca+b 等效于 c(a+b) ab=c 等效于 (ab)=c,2、关系表达式:用关系运算符将表达式连接起来称为关系表达式。其值非真即假。在C+语言中,用非0代表真,用0表示假。关系表达式的结果只有两个,真为1,假为0。 一般格式为:表达式1 关系运算符 表达式2 例如:ab等都是合法的关系表达式。 说明: (1)关系表达式的值:如果关系表达式成立,其值为1,表示“真”;否则是0,表示“假”。 (2)关系运算符两侧是表达式可以是算术表达式、关系表达式、逻辑表达式、赋值表达式或字符表达式。,【例题】 输出关系表达式的运算结果。 #include using namespace std; int main() int a=10,b=20; cout=b)a+b)b)“ ” abendl; system(“pause”); return 0; ,运行结果为: 0 1 0 0 1 0 1,1逻辑运算符:与&;或 |;非!;,重庆籍的男生 重庆籍的学生或所有男生 非重庆籍的学生,重庆籍&男生,例如:两个条件:重庆籍 男生,重庆籍|男生,!重庆籍,注意: 1.优先级:!&| | !算术关系逻辑赋值逗号,53 & 2 | 84-!0,3.不可写为 1x10 应为:1x & x10,2.作为条件,所有非0值均为真;作为结果,只有0或1两种。,【例题】判断某年是否为闰年 1)能被400整除 2)能被4整除,不能被100整除 (2200年不是),year%400= =0,year%4= =0& year%100!=0,(year%400= =0) | (year%4= =0&year%100!=0),所谓选择结构,就是根据不同的条件,选择不同的处理块。,(1)基本形式一:if(表达式)语句; 其执行过程是:首先计算表达式的值,若不为0,表示条件判断为真,则执行语句;否则,不执行语句,如图所示。,【例题】 求x的绝对值。 #include using namespace std; int main() long x,absx; cinx; absx=x; if (x0) absx=-x; cout”|x|=”absxendl; system(“pause”); return 0; ,(2)基本形式二 if (表达式)语句1; else 语句2; 其执行过程是:首先计算表达式的值,若不为0,条件判断为真,则执行语句1,否则,执行语句2。,【例题】 求x的绝对值(用if-else结构形式)。 #include using namespace std; int main() long x,absx; cinx; if (x0) absx=-x; else absx=x; cout “|x|=”absxendl; system(“pause”); return 0; ,条件表达式 条件表达式一般形式为: 表达式1 ?表达式2 :表达式3;,#include using namespace std; int main() long x,absx; cinx; absx=(x0)?(-x):x; cout “|x|=”absxendl; system(“pause”); return 0; ,【问题描述】行李托运,10公斤以内运费2.5元,超过10公斤,超过部份每公斤加收1.5元。 【文件输入】输入只有一个数,表示行李的重量(=10000)。 【文件输出】输出只有一行,包括1个数(保留两位小数)。 【样例输入】9 【样例输出】 2.50,例题,#include #include using namespace std; int main() double p,s; cinp; if (p=10) s=2.5; else s=2.5+(p-10)*1.5; coutfixedsetprecision(2)sendl; system(“pause“); return 0; ,参考程序,【练习试题】求三个数的最大数 【问题描述】已知有三个不等的数(均小于10000),将其中的最大数找出来。 【文件输入】输入只有一行,包括3个整数。之间用一个空格分开。 【文件输出】输出只有一行包括1个整数。 【样例输入】1 5 8 【样例输出】8,练一练,#include using namespace std; int main() long a,b,c; cinabc; if (ac) coutaendl; else coutcendl; system(“pause”); return 0; ,程序代码,在IF语句中,跟在条件或else后的语句可能不止一个,这时要用到复合语句。 复合语句是以 开始,以 结束的语句。 在 与 之间可以包括若干个语句,每个语句之间以分号分开。,复合语句的一般形式 ; ; ; ,复合语句,练 习:输入两个数分别存放在变量a,b中,将较大的值存入a中,另一值存入b中,输出a,b。,算法: 1、输入a,b; 2、if ab then 交换a,b的值; 3、输出a,b的值。,long a,b,c; cinab; if (ab) c=a;a=b;b=c; couta“ ”b;,基本形式三: if (表达式1) 语句1 else if (表达式2) 语句2 else if (表达式n) 语句n else 语句n+1,#include using namespace std; int main() long x,y; cinx; if (x0) y=0; else if (x=5) y=x; else y=x*x; cout”x=”x”y=”yendl; system(“pause”); return 0; ,程序代码,【练习试题】求三个数的大小顺序 【问题描述】输入三个数(都小于10000),按由大到小顺序打印出来 。 【文件输入】输入只有一行,包括3个整数。之间用一个空格分开。 【文件输出】输出只有一行,包括3个整数。之间用一个空格分开。 【样例输入】1 2 3 【样例输出】3 2 1,练一练,1516 1517 1518 1519 1521 1522 1523 1524 1525 1527 1528 1529,课堂作业,:8080/BS41Online,【练习试题】剪刀、石头、布游戏 【问题描述】编程模拟剪刀、石头、布游戏:用S表示剪刀,用R表示石头,用P表示布。规则是:剪刀剪布,石头砸剪刀,布包石头。游戏者甲乙分别把自己的选择输入,计算机给出结果。 【文件输入】输入甲乙两个人分别出的结果 【文件输出】输出结果,若甲获得胜利输出“Win“,平局输出“Equ“,否则输出“Fall“ 【样例输入】S R 【样例输出】Fall,练一练,#include using namespace std; int main() char a,b; cinab; if(a=R ,程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论