数据类型
在创建任意变量和常量时,必须指定出数据类型
存在意义:给变量分配合适的内存空间
1.整型:整数类型
short 2字节 短整型
int 4字节 整形
long windows4字节 linux为4字节(32位)8字节(64位)
long long 长长整形 8字节
2.sizeof关键字
可以求出数据类型所占内存大小 数据类型占用内存大小与所存的数据大小无关
语法:sizeof(数据类型/变量);
3.浮点型
作用:用于表示小数
float(单精度)4字节
double(双精度)8字节
系统默认创建小数是double,用float创建时需要加上f:float f1 = 3.14f;
默认情况下,输出一个小数会显示出六位有效数字
科学计数法:3e2表示300,3e-2代表0.03
4.字符型
char ch='a'; 1字节
注意事项:单引号而不是双引号 单引号内只能有一个字符,不能是字符串
字符型变量不是把字符本身存到内存中,而是将对应ASCII编码放入存储单元
输出字符型变量对应的ASCII编码: cout<<(int)ch<<endl; 含义为把ch强转为整型
ASCII 值 a-97 A-65
5.转义字符
作用:表示一些不能显示出来的ASCII字符
如
\n 换行
\t 水平制表符 \t表示了8个空格 起到对齐的效果

\\表示一个\符号
6.字符串型
注意要用双引号
C风格字符串: char 变量名 ="字符串值"
C++风格字符串:string 变量名 ="字符串值" 需要包含string头文件
7.布尔类型
bool类型只有两个值 1字节
true --真 (本质是1)
false -- 假 (本质是0)
8.数据的输入
作用:从键盘获取数据 整形,浮点,bool,字符,字符串都可以修改
语法:cin >> 变量

9.运算符
算数运算符
-
- * /(两个整数相除,结果依然是整数,会将小数部分去除,不能除以0,两个小数可以相除,运算结果也是小数)
%(取余,两个小数之间不可取余)
++(前置,后置)
--(前置,后置)
前置:先变化,后进行表达式运算
后置:先进行表达式运算,后变化
赋值运算符
+=,-=,*=,/=,*=,%=
a+=2 相当于a = a+2
比较运算符
==相等于
!=不等于
<小于
>大于
<=小于等于
>=大于等于
逻辑运算符
!非
&&与 有假则假
||或 有真即真
程序流程结构
顺序流程,选择流程,循环流程
选择结构
1.if语句
if(){
}//单行if语句
if(){
}else{
}//多行if语句
if(){
}else if(){
}else if(){
}//多条件if语句
//嵌套if语句
2.三目运算符
c = (a>b?a:b); 如果a>b就把a赋值给c,否则就把b赋值给c
三目运算符返回的是变量,可以赋值
(a>b?a:b)=100;
3.switch语句

循环结构
满足循环条件就执行循环语句
while(循环条件){
}
do...while
do{
}while(循环条件);
for循环
for(起始表达式;条件表达式;末尾表达式){
循环语句
} 括号内的三个表达式都可以不写for(;;){}

跳转语句
break 用于直接跳出循环语句和选择语句
跳出循环:直接不进行循环,而不是更新条件继续运行
continue
在循环语句中,跳过本次循环中剩下的语句,然后进行下次循环
goto语句

用于跳过语句,图片中1,2运行后直接运行5
数组
数组特点:
数组中每个元素都是相同的数据类型
数组放在一块连续的内存空间中
1.数据类型 数组名数组长度;
2.数据类型 数组名数组长度 = {值1,值2};
3.数据类型 数组名\[\]={值1,值2};
定义数组时,必须有初始长度
如果在初始化时没有填写完数据,会用0填补剩余数据
一维数组数组名
1.可以统计整个数组在内存中的长度 使用 sizeof(数组名)
通过sizeof(arr)/ sizeof(arr0)可以计算出arr数组中元素个数
2.可以获取数组在内存中的首地址 cout<<数组名<<endl;