8.数据类型——实型
实型(浮点型):单精度float(4字节,7位有效数字) 双精度double(8字节,15-16位有效数字)
有效数字:小数点前后都算
定义:float f1 = 3.14;
一般在3.14后加个f,如果不加的话编译器会默认认为该小数是double(尽管你定义的是float类型),加了f编译器就知道是float了。(该步骤只针对Visual Studio,Clion经实验不会有该情况)
float f1 =3.14159265;
double d1 =3.14159265;
std::cout<<"f1为"<<f1<<std::endl;
std::cout<<"d1为"<<d1<<std::endl;
输出结果:f1为3.14159
d1为3.14159
从以上代码可看出,再不做其他任何配置的情况下c++默认输出6位有效数字,不论是float还是double
//科学计数法(比较少用 了解即可)
float f2 =5e3;
float f3 =5e-3;
std::cout<<"f2 = "<<f2<<std::endl;//5e3 = 5 * 10 ^ 3
std::cout<<"f3 = "<<f3<<std::endl;//5e-3 = 5 * 0.1 ^ 3
输出结果:f2 = 5000
f3 = 0.005
9.数据类型——字符型
字符型char:用于显示多个字符。注意用的是单引号不是双引号,引号内只能有一个字符不能是字符串。
C和C++里char均只占用一个字节 字符型变量不是把字符本身放进内存存储,而是把字符的ASCII放入到存储单元
//字符型变量创建方式
char ch ='A';
std::cout<<"ch = "<<ch<<std::endl; 输出结果:ch = A
//字符型变量所占内存空间
std::cout<<"char所占内存空间为: "<<sizeof(ch)<<std::endl; 输出结果:char所占内存空间为: 1
//常见错误
//char ch2 = "b";
//char ch3 = 'akdank'
//查看变量ASCII值
std::cout<<(int )ch<<std::endl; 输出结果:122
//常见ASCII码 剩下以此类推a-97 A-65
10.数据类型——转义字符
\\ 代表一个反斜杠\
\t 水平制表 作用是使\t后的内容时候首字母对齐
11.数据类型——字符串
C语言风格 char 字符串名[] = "输出内容";
C++风格 std::string 字符串名 ="输出内容";
使用string需#include <string> 即引入string的头文件
12. 数据类型——布尔类型(占1个字节大小)
布尔类型只有两个值 真true和假false
true本质为1 假本质为0
13.数据类型——数据输入
整形
int a =0;
std::cout<<"请给a赋值:"<<std::endl;
std::cin>> a;
std::cout<<a<<std::endl;
输出结果:
请给a赋值:
50
50
浮点型:
float f =3.14f;
std::cout<<"请给f赋值:"<<std::endl;
std::cin>> f;
std::cout<<"f的值是:"<<f<<std::endl;
字符型、字符串型、bool型同上
定义变量为字符型 输入的可以是数字 不会报错 会正常输出你输入的数字 字符串型也是
bool类型输入的只要是非0的都为真 即输入true和输入任何非0的数的效果是一样 输出结果是1
14.四则运算
取余运算是基于除法运算,既然除法运算中除数不可以是0,那么取余运算中也一样,除数是0会报错
两个小数不可以做取余运算
15.递增递减
前置递增和后置递增的区别:前置递增(++a)会先让变量+1,在进行表达式运算;
后置递增(a++)会先进行表达式运算,再让变量+1;
eg:
int z =10;
int x = z++ *2;
std::cout<<"x = "<<x<<std::endl;
运算结果:20