计算机选择结构_第1页
计算机选择结构_第2页
计算机选择结构_第3页
计算机选择结构_第4页
计算机选择结构_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

第三章选择结构1。关系运算和逻辑运算

1-1。C语言中的逻辑值

关系表达式和逻辑表达式,其运算结果都会得到一个逻辑值。及真或假。在c语言中没有专门的逻辑值,而是用非零来表示真,用零来表示假,因此对任意一个表达式,如果值为0时,就代表一个“假”值,只要值是非零,无论是正数还是负数,都代表一个”真“值。

1-2。关系运算符和关系表达式

关系运算是逻辑运算中比较简单的一种,所谓关系运算实际上就是比较运算,将两个数进行比较,判断比较的结果是否符合指定的条件。

C语言为我们提供了6种关系运算符号

><<=>===!=。第三章选择结构例:

inta=5,b=10,c;

c=a>b;Printf(“%d”,c);

注意:如果关系运算符两边的值的类型不一致时候,应遵循自动转换类型的原则进行转换后再进行计算。1-3。逻辑运算符和逻辑表达式

c语言提供了3中逻辑运算符

&&||!

第三章选择结构逻辑运算表

ab!a!ba&&ba||b

非0非00011

非000101

0非01001

00非0非000

例:

inta=1,b=2,c=3,d=4,e;e=(a>b)&&(c>d);

printf(“%d”,c);

第三章选择结构1-4:if语句和用if语句构成的选择结构

1、if语句是用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。

2、if语句有三种形式:2.1、if

(表达式)语句

如:if

(x>y){t=a;a=b;b=t;}

解释:if是c语言的关键字,表达式两侧的括号不可少,最后的是一条语句,称为if子句。如果在if子句中只要一个语句,可以省略括号。

例:输入两个数,分别放入x和y中,若2数不相等,则输出其中的大数,若2数相等则输出”x==y”和x的值。第三章选择结构Intx,y;

printf(“Enterx,y:\n”);

scanf(“%d%d”,&x,&y);

if(x>y)printf(“x=%d\n”,x);

if(y>x)printf(“y=%d\n”,y);

if(x==y)printf(“x==y%d:\n”,x);

例:输入三个整数,分别存放到变量a,b,c中,编写程序,使输入的值重新排列成由小到大的顺序放到变量,a,b,c中,最后输出a,b,c中的值。Inta,b,c,t;

printf(“Entera,b,c”);

scanf(“%d%d%d”,&a,&b,&c);

printf(“a=%d,b=%d,c=%d\n”,a,b,c);

if(a>b){t=a;a=b;b=t}if(a>c){t=a;a=c;c=t}

if(b>c){t=b;b=c;c=t}

printf(“%d,%d,%d\n”,a,b,c);第三章选择结构2.2、if

(表达式)语句1

else语句2

如:if

(x>y)

printf

("%d,x");

else

printf

("%d,y");解释:这里的语句1,称为if子句,语句2称为else子句。若子句需要多条语句时,需要用大括号括起来组成一个复合语句。

注意:else语句不能单独使用,他只是if语句的一部分,所以在程序中else必须与if语句合用,组成if---else语句。

例:输入2个不等的整数分别给x和y,之后输出其中的大数。Intx,y;

scanf(“%d%d”,%x,&y);

if(x>y)

printf(“max=x=%d\n”,x);

else

printf(“max=y=%d\n”,y);第三章选择结构输入一个数,判别它是否能被3整除,若能被3整除,输出yes,若不能除数No.Intn;

scanf(“%d”,&n);

if(n%3==0)

printf(“yes\n”)

elseprintf(“no\n”);第三章选择结构2.3、if

(表达式1)语句1

elseif

(表达式2)语句2

elseif

(表达式3)语句3…

elseif

(表达式m)语句m

else语句n

如:if(number>500)cost=0.15;elseif(number>300)cost=0.10;elseif(number>100)cost=0.075;elseif(number>50)cost=0.05;eslecost=0;第三章选择结构解释:从上到下逐一对if后的表达式进行检测当某一个表达式的值为非0时,就执行与此有关的语句,其他部分就被跳过。

例:编写程序,根据输入的学生成绩,给出相应的等级,90分以上的等级为A,60分以下的为E,其余每10分为一个等级。Intg;

scanf(“%d”,&g);

if(g>=90)

prinft(“A\n”);

elseif(g>=80)

printf(“B\n”)

elseif(g>=70)

printf(“C\n”)elseif(g>=60)

printf(“D\n”)

else

printf(“E\n”)第三章选择结构5、特殊的条件运算符:

表达式1?表达式2:表达式3

当表达式1的值为非0时,执行表达式2的值,当表达式1为0时,则执行表达式3的值。

例:

y=x>10?100:200;

如果x>10为真则y=100,反之则y=200;第三章选择结构6、switchbreak选择语句

switch语句是多分支选择语句。形式如下:

switch(表达式){case常量表达式1:语句1break;case常量表达式2:语句2break;……case常量表达式n:语句nbreak;default:语句n+1break;

}

说明

(1)当表达式的值与某一个case后面的常量表达式的值相等时,就执行case后面的语句,若所有的case中的常量表达式的值都没有与表达式的值匹配的,就执行default后面的语句。

(2)每一个case的常量表达式的值必须互不相同,否则就会出现相互矛盾的现象。第三章选择结构(3)各个case和default的出现次序不影响执行结果。修改上例:

intg;Scanf(“%d”,&g);Switch(g/10){case10:

case9:printf(“A\n”);break;

case8:printf(“B\n”);break;

温馨提示

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

评论

0/150

提交评论