171015—表达式&数据的输入输出

来源:互联网 发布:矩阵向量化公式 编辑:程序博客网 时间:2024/06/03 20:31

一.表达式:
表达式是由数据和运算符组成的,按求值规则,表达一个值的式子。切莫拘泥字面!
- 算数表达式
- 逻辑表达式
- 赋值表达式
- 条件表达式
- 逗号表达式(啥?)
1.算数表达式:有算数运算符和操作数组成,结果为算数值。(反应计算。)
类型转换: 在计算中,结果值的类型由操作数的类型决定(例见昨日。)。当操作数类型不同,则发生类型转换。
向类型较高级的数据看齐,这一操作由系统自动进行。
在“赋值”时,系统会强制把运算值转换成变量的值,然后执行写操作。double给int就只剩int。
除系统自动转换,人为可通过“(类型)(表达式)”将表达式的值强制转换类型。举例:
(int)(x+y)即强制将x+y的值转变为整型。
注:由俭入奢易,由奢入俭难。低转高很平稳,而高转低就有可能数据错误或丢失。

2.逻辑表达式:用于执行判断运算(反正就是叫运算了。),结果值只有两个,以1和0表示。
所谓判断运算,包括比较运算和逻辑运算两种。第一种判断值的大小,第二章判断操作数的真假(在此有非0即为真。)
····逻辑短路:E1&&E2 逻辑与运算,当E1的值为0时,系统自动判此式为0,不再判断E2的真假(值)

3.赋值表达式:最先接触,把数据值写入变量。
赋值号左边的“表达式”也可以是一个赋值表达式:
比如 a=b=10,即a=(b=10).一次性完成两次赋值。
而: (a=b)=10,则是先将b写入a,再将10写入a。
····用于简化代码的复合赋值运算符:a+=b 等价于 a=a+b; 即“左为左,先在先。”

4.条件表达式:由条件运算符和操作数组成,根据逻辑值决定表达式(昨日已提)
····表达三个数中的最大数:
#include<iostream>
using namespace std;
int main()
{
int a,b,c,max;
cin>>a>>b>>c;
max=a>b?a>c?a:c:b>c?b:c;
cout<<max<<endl;
}

这里的 max=a>b?a>c?a:c:b>c?b:c 。费了我不少弯才绕出来。

5.逗号表达式:你算啥?
用逗号链接起来的若干个表达式称为逗号表达式。两层含义:
·各表达式按顺序进行;·表达最后一个表达式的值。
比如:X=(A=3,2*6),则X=2*6,即12,而X=A=3,2*6 则X=3(逗号的运算级别最低)。

二.数据的输入和输出。

  • 键盘输入:cin>>变量1>>变量2...>>变量n;键盘输入即读取用户输入的字符串,按相应变量的类型转换成二进制代码写入内存(那得存在一个变量先哦。)这决定了任何输入之前必先进行变量的定义说明。(猪与羊安有厨房可送乎?)·····要注意,输入时变量是讲究顺序的。
  • 屏幕输出:cout<<1<<2<<....<<n可使用输出格式控制符。

P.S. 操作数不是数, ASCII码可以与数字等价,进行运算;算数值视为逻辑值。
P.P.S. 今日乌龙 编个指针耍了一下,编译不报错,但就是运行不了。后来才发现是自己写错了指针赋值。
听说 DEV报错功能约为0,还听说多ide大法好。这里写图片描述

P.P.P.S inner peace…..

明日计划:if语句初探。

原创粉丝点击