1.int 的大致范围:-2X10^9~2X10^9
long long 的范围:-9X10^18~9X10^18
2.布尔型在C++中可以直接使用,true和false。
C语言则需要加头文件:#include <stdbool.h>
3.define 和const
define:宏定义是直接将对应的部分替换,然后才进行编译和运行。
#define ADD(a,b)((a)+(b))
4.scanf的格式:
int :%d
long long :%lld
float:%f
double:%lf
char:%c
char数组:%s
printf的格式:
int :%d
long long %lld
float:%f
double :%f
char:%c
5.占位符:
%md:右对齐
%0md:右对齐,左边补0
%.mf:让浮点数保留m位小数输出
6.常用的math函数:
#include <math.h>
fas(double x):取绝对值
floor(double x) ceil(double x)
向下取整合向上取整
pow(double r,double p):r的p次方
sqrt(double x):算术平方根
log:以自然对数为抵的对数
sin,cos,tan(double x)
round(double x):将double 类型的变量四舍五入
7.一维数组,二维数组:
数组大小必须是整形常量,不可以是变量
数组初始化:int a[10]={0},只要初始化一个值,其他值没有初始化则默认为0
冒泡排序:
for(int i=0;i<n;i++)
{
for(int j=0;j<n-i;j++){
if(a[j]>a[j+1]){
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
memset函数:对数组中的每一个元素赋相同值,
memset(数组名,值,sizeof(数组名))
建议赋0或者-1
如果要赋值其他值,可以使用fill()函数
8.string.h头文件:
strlen()得到字符数组第一个\0前面的字符个数
strcmp():比较大小
strcpy(str1,str2):将str2拷贝给str1,会覆盖赋值
strcat()将str2接在str1后面
9.sscanf和sprintf:
scanf(screen,"%d",&n):从左至右
printf(screen,"%d",n):从右至左
sscanf(str,%d,&n):从左至右
ssprintf(str,,%d,n):从右至左
10.指针:
指针是一个unsigned类型的整数
指针变量:int *p,double *p;
int *p=&a;
*p=112;
指针和数组:
指针可以自加和自减
11.引用:
变量的别名
12:.结构体:
结构体的初始化:默认构造函数