GESP一级培训知识点梳理

~ 2025-12-26 22:34:47

数据类型

整数: int:数据范围(231-2^{31}~23112^{31}-1,大概是(109-10^9~10910^9)占4个字节

long long:数据范围(263-2^{63}~26312^{63}-1),大概是(1018-10^{18}~101810^{18})占8个字节

小数: float:保留6~7位有效数字

double:保留15~16位有效数字

字符:

char:单引号引起来的一个字母数字或符号

如:'a','b','(',' '

转义字符:反斜杠后面跟一个字母或数字

常见转义字符:'\n','\t'

ASCII码:

‘0’:48

'a':97

'A':65

大小写字母之间差了32

大小写转换

布尔:

bool:true(1),false(0)

所有非零为true,0为false

格式化输入输出:

scanf("格式化控制符",&变量)

printf("格式化控制符",变量)

常见的格式化控制符:

int:%d

long long:%lld

float:%f

double:%lf

特殊的格式化控制符:

保留小数:%.nf,%.nlf

特殊说明:

%nd:在scanf这种使用时表示读入n位数,在printf中使用时表示数字占用的宽度。

读入带格式的数据: 读入日期(2025/12/28):scanf("%d/%d/%d",&y,&m,&d)

读入时间(12:39:10):scanf("%d:%d:%d",&h,&m,&s)

printf中使用换行符:\n

输出特殊字符:

输出\:printf("\\")或者cout<<"\\"

输出%:printf("%%")或者cout<<"%"

输出‘:printf("\'") printf("'")或者cout<<"'" cout<<'\'';

输出":printf("\"")或者cout<<"\"" cout<<'"' cout<<'\"'(注意cout<<"""""""""";这个输出为空)

自增自减:

++a,a++,--a,a--

算术运算符:

+,-,*,/(整数小数),%(正负,只能用于整数)

赋值运算符:

=

复合运算符:

+=,-=,*=,/=,%=

逗号语法连续执行多个语句: int a,b,c;

a=1,b=3,c=4;

a++,a=b,cout<<c;

条件运算符(关系运算符)

(>,<,>=,<=,==,!=)

逻辑运算符

!(not),&&(and),||(or)

分支语法

单分支:

if(条件){

  //很多行代码
  
}

//只有单行代码的时候
if(条件) cout<<123;

//注意很特殊的
if(条件) ;
cout<<123;

双分支:

if(条件){

  //代码
  
}else{

}

if() cout<<123;
else cout<<234;

多分支:

if(条件){

  //代码
  
}else if(条件){

}else if(条件){

}else{

}

switch分支:

int a;
cin>>a;
switch(a){
  case 1:
    cout<<1;
    break;
  case 2:
    cout<<2;
    break;
  ......
  default:
    cout<<"aaa";
    break;
}

//没有break会出现穿透现象。

}

循环

单循环:

for(循环变量的初始化;循环条件;循环变量的改变){
  //循环体
}

//如果循环体只有一行代码
for(循环变量的初始化;循环条件;循环变量的改变)
//循环体

//死循环
for(;;;)

//while-do
while(循环条件){
  //循环体
}
//如果循环体只有一行代码
while(循环条件)
//循环体


//死循环
while(true)

//do-while
int a;
cin>>a;
do {
    cout<<1;
}while (a<10);

break和continue

break只能使用在,switch,for,while当中,不能使用在if中

continue只能使用在for,while中

常考点

累加,累乘的使用



我们会审查剪贴板内容,并对发布不合适内容的同学进行相应的处理