输入输出和运算符

输入

在前文中,我们已经学会了输出Hello!World,但是如果我们需要从输入一个数字,并将其原样输出呢?

此时我们不仅要学会输出,还要学会输入

输入的语法和输出很像,我们给出例子:

int a;
cin>>a;

可以看到,只是把out改成了in,非常好理解。

需要注意的是,输出是<<符号而输入是>>,二者箭头是相反的

跟输出一个<<输出一个内容一样,输入>>一个也只能输入一个内容,例如

int a,b;
cin>>a,b;

就是一份典型的错误代码

正确的代码应该是

int a,b;
cin>>a>>b;

此外,cin会自动忽略空格和换行,这是个很重要的特性


输出

在前文中我们已经讲过一些基础的输出,在这里仅补充前面未涉及到的部分知识

在使用cout要原样输出某些内容时,我们一般使用""输出字符串,但是我们发现部分字符没法直接打在引号里面,例如换行

此时,我们就需要用到转义字符

在 C++ 中,转义字符用于表示一些无法直接输入或具有特殊意义的字符,他们一般都由反斜杠 \ 开头

在竞赛中,一般只用得到换行,即\(\n\)

例如:

cout<<"A\na";

输出的大小写会在两行,因为\n是换行

此外<<endl,也可是换行


运算符

在c++中,运算符主要分为以下几种:
1.算术运算符
2.关系运算符
3.逻辑运算符
4.位运算符
5.赋值运算符
6.其他杂项运算符

在本文,我们仅介绍算术运算符和赋值运算符


算术运算符

1.+

作用是将两个数相加,例如

cout<<5+2;

最后得到的结果是7

2.-

作用是用左边的操作数减去右边的操作数,例如

cout<<5-2;

得到的结果会是3

3.*

作用是将两个数相乘,例如

cout<<5*2;

得到的结果会是10

4./

作用是用左边的操作数去除以右边的操作数

需要注意的是,如果两边都是整数,那么得到的结果也会是整数,如果除不尽就向下取整,例如

cout<<5/2;

得到的结果会是2,如果我们想得到实数结果,可以尝试

cout<<5.0/2;

我们就会发现得到的结果会是2.5

5.%

作用是取余,即得到左边的操作数整除右边的操作数所得到的余数,例如

cout<<5%2;

得到的结果会是1

6.++

作用是自增,即整数值增加1,例如

int a=5;
a++;
cout<<a;

得到的结果会是6

有个值得注意的点,自增可以放在要运算的值前面或者后面

区别是如果放在前面就会在一开始就自增,如果放在后面就会在所有表达式结束之后在自增

举个例子

int a=5;
cout<<a++;

得到的输出会是5,因为我们输出完之后才会自增

但如果把代码改成

int a=5;
cout<<++a;

我们就会发现得到的答案是6,因为自增在一开始就进行了

7.--

如同上面的自增,--就是整数值-1,也同样如同++一样可以放前面或者后面,区别同样为先减和后减的区别

例如

int a=5;
cout<<a--;

得到的结果会是5

int a=5;
cout<<--a;

得到的结果就会是4


赋值运算符

首先,最简单的赋值运算符就是=,即将右边的操作数赋给左边的操作数
例如

int a=5;
a=7;
cout<<a;

得到的结果是7,因为我们将7赋给了a

除了=外,我们所学的算术运算符可以放到=前面成为赋值运算符

例如,将+号放到=前面,成为+=

意思是将左边操作数加右边操作数得到的结果赋给左边操作数,例如

int a=5;
a+=2;
cout<<a;

我们得到的输出将会是7,因为我们将a的5和2相加得到7赋值给了a

同理,/=,*=,%=,-=都是赋值运算符,计算方法跟+=相同,我们不再赘述


运算符混用与优先级

各种不同的运算符是可以混用的,例如

int a=5;
a=5+7;
cout<<a;

此时得到的结果会是12

但如果

int a=5;
a=5+2*5;
cout<<a;

我们得到的结果会是15,而非7乘5得到35,因为运算符是有优先级的,乘除法会比加减法更高,同等级从左往右依次计算

如果我们想要先算加法再算减法,可以在表达式里面加括号,括号里面的会优先计算,例如

int a;
a=(5+2)*5;
cout<<a;

此时我们的答案就会是35了

在我们目前所学运算符中,赋值运算符低于算术运算符,算术运算符中%*/三种高于+-两种

posted @ 2026-10-10 15:57  罗小菜  阅读(6)  评论(0)    收藏  举报