从零开始学习C++——变量

上一章我们认识了C++的输出方法,今天我们继续学习C++的变量

目录

理解变量

变量类型

使用变量 

变量的操作

1.定义变量

2.赋值操作

3.运算操作

变量的读入及输出

1.cin读入

2.scanf读入

3.cout输出

4.printf输出

题目推荐

结尾


理解变量

可以字面理解为是一个会变的量,可以理解为有一栋房子,房子叫a,里面住着数字1,也就是a的值,有一天住着的数字变成了2,也就是a的值从1变成了2。

从零开始学习C++——变量_第1张图片

还是满形象的吧 

变量类型

我们常用的变量有一下几种:
类型 作用 存储大小 占用大小
int

存储整数

-2^31~2^31-1 4个字节
char 存储字符 0~128 1个字节
bool 存储false和turn 0~1 1个字节
long long 可以存储比int更多整数 -2^63~2^63-1 8个字节
double 存储整数浮点数(也就是小数) -1.7x10-308 ~ 1.7x10308 8个字节

使用变量 

变量的操作

1.定义变量

格式如下:

变量类型 变量名称;

比如定义一个int类型的变量a:
 

int a;

说明

  • 变量名称不能是C++的关键字,比如变量类型就是C++的关键字
  • 变量名称不能是数字开头
  • 变量名称不能相同

温馨建议:尽量把变量定义在我们写主程序的外面

如下:

#include 
using namespace std;
int a;
int main() {
	
	return 0;
}

这样定义a的初始值就是0,但在主程序的里面定义初始值就是个随机数,在后面写一些程序的时候会很不方便。 作者就因为不这样写错了许多题目

2.赋值操作

赋值操作就是给变量一个值 格式如下:

变量名称=要赋的值;

比如给一个int类型的变量a赋值为2:

a=2;

也可以在定义的时候赋值:

int a=2;

3.运算操作

这个更我们小学学的加减乘除是一个道理,先乘除后加减

a=a+1;
a=a-1;
a=a*1;
a=a/1;
a=((a+1)*(a+2))/3

C++用的括号全都是小括号

除了四种基本运算符,C++还有一个取余数的运算符'%'

int a=1;
a=a%2;

那现在a的值依然是1,因为1/2的余数还是1

除了这些普通的写法,还有一些其他写法

a+=10;
a-=10-10;
a*=5*8;
a/=5%2;
a%=6/3;
a--;
--a;
a++;
++a;
  1. a+=10其实就是a=a+10
  2. a-=10-10其实就是a=a-(10-10)
  3. a*=5*8其实就是a=a*(5*8)
  4. a/=5%2其实就是a=a/(5%2)
  5. a%=6/3其实就是a=a%(6/3)
  6. a--其实就是a=a-1;
  7. --a其实也是a=a-1
  8. a++其实就是a=a+1
  9. ++a其实也是a=a+1

a--和--a的区别:a--是先用后减,--a是先减后用,a++和++a同理

举个例子:
 

int a=5;
int b=a--;
a=5;
int c=--a;

b的值应该是5,c的值应该是4

变量的读入及输出

1.cin读入

cin是C++中一种方便快捷的读入方法,方法如下:

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

但如果题目要求我们还要读入一些乱七八杂的东西在中间,就需要用到scanf

2.scanf读入

在此之前我们需要了解一个叫占位符的东西,占位符用于读入和输出。

可以理解为空出一个房子,让数字搬进去

方法如下:

int a;
char b;
scanf("<%d,%c>",&a,&c);

细心的读者肯定发现了a和c的前面的有一个'&',这是取址运算符,现在大家不必深入理解,在后面我会讲解,现在大家只需要知道,scanf在读入变量时,读入的变量前要加上'&'就行了

上面的代码中%d用与读入int,%c用于读入char,其他占位符在结尾给大家看

题为话:本人喜欢用scanf,一是方便,二是比cin

3.cout输出

方法如下:

int a,b;
cout << a+b << endl;

看起来十分简便,但如果题目要求用要求格式输出,代码就会显得很长,这个时候就要用printf

4.printf输出

printf输出变量一样需要在占位符的帮助

方法如下:

int a,b,c;
printf("%d+%d=%d",a,b,c);

这样就可以连同符号一起输出了

题目推荐

A+B Problemhttps://www.luogu.com.cn/problem/P1001 Hello,Phantom!https://hydro.ac/d/Phantom/p/PH0001 重要的事情说三遍!重要的事情说三遍!重要的事情说三遍!https://hydro.ac/d/Phantom/p/PH0002 A+B Problemhttps://www.luogu.com.cn/problem/P1001 A * B Problemhttps://hydro.ac/d/Phantom/p/S0001 求长方形的周长http://noi.ac/problem/1112 求长方形的面积http://noi.ac/problem/1115

结尾

先附上表格:

类型 作用
%d 用于十进制整数(也可以用作bool)
%lf

用于浮点数

%c 用于字符
%o

用于八进制整数

%x,%X 用于十六进制整数
%lld

用于十进制整数(long long)

后面如果遇到了其他占位符的,我会另外说明

如果可以支持一下作者的OJ:PHOJ

你可能感兴趣的:(从零开始学C++,c++)