再谈变量——变量的作用域
作用域?
定义的变量只能在自身作用域中使用
作用域划分:以花括号划分,一个变量的作用域为最小包含它的花括号的区域
不同作用域,变量名可以重复。使用变量时,如果有多个重名的,看最近的那个
局部变量、全局变量
局部变量默认值为随机数据,全局变量默认值为0
什么是数组?
定义方法:在定义变量时加方括号,方括号里写数组长度,于是这个变量就成为了一个数组
数据长度必须是确定的数,不能是变量(*)
使用:和变量一样。需要加上中括号使用。不能直接使用。使用的时候的中括号里就可以写变量了
数组角标从0开始,换句话说,数组的第一个”格子“为0号”格子“
显然,中括号里面不能是个负数
常见错误:数组越界
多维数组
函数内最好不要定义数组。数组最好定义成全局变量。
船新的运算符
i++
表示直接把 i
加上1,等价于 i=i+1
i--
同理++i
和 --i
也类似(*)i+=n
表示直接把 i
加上n,等价于 i=i+n
i-=n
i*=n
i/=n
i%=n
同理while语句
while(条件){}
while(true){}
死循环break;
跳出循环continue;
不再执行后面的代码,直接跳到本次循环。不会结束整个循环return 0;
直接结束程序
for语句
语法:for(初始化语句;条件语句;循环后执行语句){}
等价于
c++12345初始化语句;
while(条件语句){
....
循环后执行语句;
}
初始化语句中常用来定义变量
条件语句同while
花括号里的代码执行完毕之后就会执行一次第三个语句
经典示例 for(int i=1;i<=n;i++){}
三个语句都是可选的,且不能太复杂
初始化语句中创建的变量作用域仅限for语句
常见用法
for(int i=1;i<=n;i++){}
从1循环到n、循环n次
for(int i=1;i<=10;i++){}
从1循环到10、循环10次
for(int i=3;i<=13;i++){}
从3循环到13、循环11次
for(int i=l;i<=r;i++){}
从l循环到r、循环 r-l+1
次
for(int i=r;i>=l;i--){}
从r倒着循环到l
while、for都能嵌套
给数组赋值
字符,char 数据类型
单引号,单引号里面只能有一个字符
ASCII 码(不用记)
观察发现:数字的ASCII码是连续的,小写字母的ASCII码是连续的,大写字母的ASCII码也是连续的
char强制转成int可看到ASCII码
int也可按ASCII码强制转成char
char能进行运算,运算时先强制转化为int(对应ASCII码)
字符串