IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> 【无标题】 -> 正文阅读

[C++知识库]【无标题】

说明:程序运行时,首先输入三角形的三条边,分别保存在三个整型变量a、b、c中,然后根据三角形的构成条件,判断任意两边之和是否大于第三边。若不满足此条件,则这三条边就不能构成一个三角形,若满足此条件就可以构成三角形,则根据相应的公式计算出三角形的面积。

编写程序,输入x的值,按以下分段函数计算并输出y的值。下需要 x≠0

才能得到

道那些 0x=0

#include<stdio. h>
{
int main()
int x; float y;
printf(“输入x的值:”); scanf("%d",8.x); /*输入x的值/

/条件判断/

if(x!=0)

y=1.0/x;

else

y=0;

三角形 printf("%d, %f", x,y);

return;
}
运行结果1:
输入x的值:22,0.500000
运行结果2:
输入x的值:00,0.000000
说明:
程序中用到了逻辑运算符“!”,含义是“非”。
关系运算符

关系运算符用于判断两个操作数的大小关系在C语言中有6个关系运算符,如表

4.1所示。
在这里插入图片描述
注意:
(1)关系运算符都是双目运算符,其结合方向是左结合。
(2)关系运算符的优先级低于算术运算符,但是高于赋值运算符。(3)关系运算符中,>、<、>=、<=的优先级相同,、!=的优先级相同,前者的优先级高于后者,即“>=”的优先级高于“
2.关系表达式 用关系运算符将两个表达式连接起来的式子称为关系表达式。关系表达式的一般形式为表达式1关系运算符表达式2功能:比较两个表达式的大小,返回一个逻辑值。例如:“a+b>=c-d”、“x<=3/2、“a’+11=c“-i-5jk+1都是合法的关系表达式。关系表达式中允许出现嵌套的情况,例如:“>(b>c)”、“a!=(cd)等注意:(1)注意区分运算符“=”和“”,。“=”是赋值运算符,“”是关系运算符。(2)对实数进行相等判断可能得不到正确的结果,例如“1.0/33.01.0”的结为0(3)关系表达式中可以出现赋值运算符,如“a>(b=0),但是不能写成“a>b=0”的式。因为关系运算符的优先级高于赋值运算符,表达式“a>b=0”相当于“(a>b)=0”,赋运算符左边不是变量,会出现编译错误。关系表达式主要用于分支结构中的条件判断。关系表达式的结果是一个逻辑值“真“假”,由于C语言中没有逻辑类型的数据,因此用“1”表示“真”,“0”表示“假”。例如关达式“(a=3)>(b=8)”的值为0
关系运算示例。
**# include<stdio.h>
int main()
{ char c=‘m’;
inti=10,j=20,k=30;
float=13e+5,y=10.85;
printr(d,%d",a+5<c,-2=>=k+1);
printf("%d%d1<j<5,x-5.25<=x+y);
printf("%d,%d\n,i++k
-2j,kji+5);
return 0;
}
运行结果:1,0,1,1,0,0
逻辑运算符和逻辑表达式
1.逻辑运算符关系表达式只能描述单一的条件。对于较复杂的复合条件,例如“x小于10且大于4”,如果用关系表达式“4<x<10”来描述,则当x=2时,由于关系运算符是左结合的,因此先计算“4<x”,其值为0;然后再计算“0<10”,其值为1;即说明当x=2时满足关系“4<x<10”,很显然是错误的。此时需要用到逻辑运算符将若干个关系表达式连接起来才能正确描述上述关系。逻辑运算符如表4.2所示:
在这里插入图片描述
注意:与运算符&.&.和或运算符都是双目运算符,非运算符!为单目运算符。2.逻辑表达式用逻辑运算符将两个表达式连接起来的式子称为逻辑表达式。逻辑表达式的一般形式为:表达式1逻辑运算符表达式2或 逻辑运算符表达式1逻辑表达式的结果也是一个逻辑值“真”“假”,即为“1”或“0”。逻辑运算的直值表
在这里插入图片描述
(1)参与逻辑运算的数据可以是1和0,也可以是非零值和0,还可以是任何类型的数据,但最终都是以非0和0判断他们是“真”或“假”。

(2)在逻辑表达式中也可以使用赋值运算符,如“a…(b=0),但是不能写成“a&b=0”的形式。因为逻辑运算符的优先级高于赋值运算符,表达式“a&.&b=0”相当于“(a&&b)=0”,赋值运算符左边不是变量,会出现编译错误。

(3)C语言规定,只对决定整个表达式值所需的最少数目的子表达式进行运算。即在由若干个子表达式组成的逻辑表达式中,从左向右计算,当计算出一个子表达式的值就确定了整个逻辑表达式的值时,此后就不再计算右边剩下的子表达式的值,这种情况称为“短路”

①对于逻辑与(&.&)运算,若“&&”左边的表达式的值为假,则可以得出整个表达式的值为假,那么“&&”右边的表达式将不再进行计算;只有当“&&”左边的表达式值为真时才计算右边表达式的值。

②对于逻辑或(11)运算,若“1”左边的表达式的值为真,则可以得出整个表达式的值为表达式的值。 真,那么“1”右边的表达式将不再进行计算;只有当“”左边的表达式值为假时才计算右边

若有定义“inta=3,b=4,c=5;",执行表达式“(a>b)&&(b+=c)l(c+=b)”后a、b和c的值分别是多少?

分析:根据运算符的优先级,表达式(a>b)&&.(b+=c)|(c+=b)相当于((a>b)&&(b+=c))|(c+=b),因此先计算表达式>b,结果为假,则子表达式(a>b)&&(b+=c)的结果为假,此时表达式“b+=c”不再计算,此b的值不发生变化,由于或运算符左边表达式的值为假,因此还需计算表达式“c+=b”的值,值为9,非零即为真,因此表达式“(a>b)&&(b+=c)(c+=b)的值为1,最后a=3,b=4,c=9

逻辑运算示例。 #include<stdio. h> int main()

{int a=3,b=3,c=2,d;

printf("%d,",!a8.8.! b8.8.c);

*语句1/

printf(%d,",!all!bllc);

语句2*/

printf("%d\n",>=b8.8.b>c);d=c–(b=6).8a++; /*语句3/

语句4/

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

return;
}
运行结果

0,1,1

a=3,b=3,c=1,d=1

分析:

(1)语句1中,逻辑表达式“!a&&!b&&c中包含逻辑运算符“!”和“&&”,由于!优先级高“因此先计算“!a”,值为0,则由于逻辑运算符的短路现象,后面的表达式不再计算,即可得出表达式!a&.&!b&&c”的值为0
(2)语句2中,由于“!”的优先级高于“1”,先计算“!a”,为0,则还要继续计算“1b”,值

(3)语句3中,关系运算符的优先级高于逻辑运算符,因此先计算“a>=b”,值为1,再计
算“b>c”,值为1,最后计算1&&1,值为1,因此表达式“n=b&b>c值为1 (4)语句4中,逻运算符“&&“的优先级高于“1”,因此句4相=c日((b-6)&&a++)“,在计算表达式“c–1(b=6)8.8a++)时,先计算“c,值为 2,再将“c-”的结果与表达式“(b=6)8.8n+”进行逻辑或运算,由于“11”左边的表达算,另外表达式“c–“计算完后c自减1,即e=1.因此语句4执行完后,a=3,b=3,c 式的值为直,则可以得出整个表达式的值为直,即d=同时“11”边的表达式不再进行计
1,d=1. 算术运算符、关系运算符及逻辑运算符的优先级从高到低的顺序如表4.4所示。全部运算符的优先级和结合性见附录B 表4.4各种运算符的优先级从高到低的顺序 赋值运算符.和算术运算符关系运算符 右结合运算符 左结合右结合 低结合性高优先级2ch>-8.8.cl逻辑表达式举例:①ch是英文字母逻辑表达式为(ch>=‘a’&&ch<=) ②a,b不同时为0.逻辑表达式为!(a0&&b0)或a!=lb!=0或allb③ch是空格或回车。逻辑表达式为(ch==(chn) ④year是闰年,即year能被4整除但不能被10整除,或year能被400整除。逻辑表达式为(year%40&&year%100=0||(ycr%400==0)
条件运算符和条件表达式条件运算符山“?”和“:”两个符号组成,用于条件求值,它是一个三目运算符,需要三个 1.条件运算符操作数。条件运算符的优先级低于逻辑运算符、高于赋值运算符,它是右结合的。2.条件表达式 由条件运算符将3个表达式连接起来的式子称为条件表达式,其一般形式为:表达式1?表达式2:表达式3条件表达式的执行顺序是:先计算表达式1的值,若值为非0,表示条件为真,则将表达式2的值作为整个条件表达式的值,否则,将表达式3的值作为整个条件表达式的值。如4>35:7的值为5若已有声明“intx=4,y=3;",则表达式x<y?x++:y++的值是3分析:对于条件表达式“x<y?x++y++,先计算表达式“x<y”的值,结果为0,则将表达式“y++”的值,也就是3,作为条件表达式“x<y?x++y++”的值,而变量y的值为4(1)条件表达式中表达式1的类型可以与表达式2和表达式3不同,表达式2和表达式 关于条件表达式的说明3的类型也可以不同,此时系统会自动进行转换,果为表达式2和表达式3中级别类型较高的。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. List item
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-23 12:09:25  更:2021-11-23 12:10:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 7:57:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码