龙空技术网

编程基础-分支结构

算法工程师小龙 205

前言:

眼前咱们对“将数学表达式表示为合法的c语言表达式”大概比较重视,小伙伴们都需要知道一些“将数学表达式表示为合法的c语言表达式”的相关资讯。那么小编也在网络上汇集了一些有关“将数学表达式表示为合法的c语言表达式””的相关知识,希望朋友们能喜欢,看官们一起来了解一下吧!

选择结构程序设计

关系表达式

逻辑表达式

选择结构程序设计

1. 关系表达式:

用关系运算符连接起来的表达式,叫做关系表达式

< <= > >=

== !=

(双目运算符, 自左向右)

关系表达式的值: 逻辑值(在C语言中,没有类型表示逻辑值,

任何非0的数值都被认为是“逻辑真”, 0被认为是“逻辑假”)

关系成立 非0(1)

关系不成立 0

2. 逻辑表达式:

用逻辑运算符连接起来的表达式,叫做逻辑表达式

! 逻辑非 单目运算符

&& 逻辑与 双目运算符

|| 逻辑或 双目运算符

逻辑表达式值:

“真”(任何非0的值都被认为是真),

“假”(0)

优先级:

! > 算术运算符 > 关系运算符 > && > || > 赋值运算符

在逻辑表达式求解中,并不是所有的逻辑运算符都要被执行:

(1) a && b && c

只有a为真时,才需要判断b的值,

只有a和b都为真时,才需要判断c的值

(2) a || b || c

只要a为真,就不必判断b和c的值 ,只有a为假,才判断b;

a和b都为假时,才判断c

C语言运算符是“惰性运算”,如果事先知道了表达式的值了,

那么后面的运算符就不需要执行了。

例子:

用逻辑表达式来判断y(年份)是否为闰年

(1) 能被4整除,但不能被100整除, 或

(2) 能被4整除,又能被400整除

3. if 语句

有三种基本形式:

(1) if (表达式)

语句

只要“表达式”的值为,非0,就执行语句

“表达式”: 任意的C语言合法的表达式都可以

语句:

单语句, 一个分号(;)的语句

复合语句,{}/if/for/while/do while/ switch..

a = 200;

b = 1;

if (a > b)

{

a = 100;

b = 200;

}

编程建议:不管if里面是单语句,还是复合语句,请用{}

(2) if (表达式)

语句1

else

语句2

"表达式":任意合法的C语言表达式都可以

"语句1","语句2":

单语句: 一个分号(;)

复合语句:{}/if/for/while/do while/switch..

(3) if (表达式1)

语句1

else if (表达式2)

语句2

else if (表达式3)

语句3

....

else if (表达式m)

语句m

else

语句n

例子:

if (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;

试写出number与cost之间的数学函数关系式?

4.条件表达式:用条件运算符连接起来的表达式,叫做条件表达式

条件运算符: ? :

三目运算符

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

先求表达式1的值,如果表达式1的值为真(非0),那么就算

表达式2的值,并且整个条件表达式的值就是表达式2的值。

如果表达式1的值为假(0),那么就算表达式3

的值,并且整个条件表达式的值就是表达式3的值。

“表达式1”,“表达式2”, “表达式3”:

任意合法的C表达式都可以。

if (a > b)

{

max = a;

}

else

{

max = b;

}

=>

max = a > b ? a : b;

5. if 语句的嵌套 “条件里面分条件”

形式:

if ()

if () 语句

else{}

else

if () 语句

else 语句

关键: else匹配问题

else总是与它上面的,最近的,同级的未配对的if语句配对

编程规范:

写完if或else后,不管它后面有没有语句,请先写{}圈定它的

范围,然后里面的子语句,请用TAB缩进。

6. switch 语句

形式:

switch(表达式)

{

case 常量表达式1:

语句1

case 常量表达式2:

语句2

break;

...

case 常量表达式n:

case 常量表达式i:

语句n

default:

语句m

}

(1)“表达式”:值必须为整数值(整型,字符型,枚举); 可以列举的值

(2)“常量表达式”:值也必须为整数值,且每个case后面的常量表达式的

值必须互不相同;

(3) 各个case和default出现的次序不影响执行结果

(4)当表达式的值与某一个case后面的常量表达式的值相等时 ,就执行此

case后面的语句,若所有case中的常量表达式值都没有与表达式的值

相等时, 就执行default后面的语句

(5)多个case可以共用一组执行语句

(6) break; 在case中break用于跳出它所属的switch语句

下面三个题目大家可以做做:

1.给一个不多于五位的正整数

(1). 求出它是几位数

(2).分别求出每一位数字

(3).按逆序输出每一位数字 例如原数为321,应输出123

2.

企业发放的奖金根据企业的当年利润决定。当利润I低于或等于100000元时,奖金可提成10%;利润大于100000元,小于200000元(100000<I≤200000)时,

低于100000元的部分按10%提成,高于100000元的部分,可提成7.5%;利润大于200000元,小于400000元(200000<I≤400000)时,

低于200000元的部分仍按上述办法提成(下同),高于200000元的部分按5%提成。利润大于400000元,小于600000元(400000<I≤600000)时,

高于400000元的部分按3%提成。利润大于600000元,小于1000000元(600000<I≤1000000)时,高于600000的部分按1.5%提成;利润大于1000000元(I>1000000)时,

超过1000000元的部分按1%提成。从键盘输入当年利润I,求应发放奖金总数。

要求:

(1) 用if语句编程序;

(2)用switch语句编程序。

3(*)

从键盘任意输入四个数a, b,c ,d,

请问从中任意选取三个组成一个三角形,

问在组成的三角形中,面积最大的是多少 ?

标签: #将数学表达式表示为合法的c语言表达式 #if语句的判断条件可以是判断表达式吗 #c语言合法表达式是什么