0
点赞
收藏
分享

微信扫一扫

C++强化 | 01 新学期再出发!温故知新!



戳一戳!和我一起走进信息学的世界

导读

C++是信息学中非常重要的一门课程,也是绝大多数学生入门信息学、参加信息学竞赛所必备的一门编程语言。


掌握C++,不仅可以让孩子对电脑、编程有更加深刻的认识,也能将学习信息学的方法应用到其他学科领域,特别是能够促进孩子对数学逻辑的理解。


本篇文章中,我们一起来复习一下基础班的基础知识,对变量、数据类型、输入输出、操作符与表达式等概念有更深刻的认识吧!



1 温故知新

圣人曰:温故而知新!


所有新的知识都是建立在已有知识的基础上不断深入拓展得到的。


温故,不仅仅是要复习旧的知识,还要有新的体会和感悟,做的更好些,可以有新的发现!


温故还要查缺补漏,哪些知识点没理解,哪些知识点没留意,哪些知识点有遗忘,都要通过温故来解决。


温故知新!


提高班的第一节课,


我们一起复习,


一起通过题目来巩固,


一起,再一起起航!

2 基础班知识总结

我们先来复习一下基础班的总体知识,具体详细的总结,我之前写了一篇文章进行汇总,想了解具体的知识,请移步:


​​精华帖 | 信息学的万般好处!附C++必备基础知识总结​​


一张图片走天下,还是原来的图片,还是熟悉的味道:


C++强化 | 01 新学期再出发!温故知新!_赋值


这张图是基础班的知识结构,让我们跟随这张图片,再次复习一下基础班的内容吧!


本篇文章,我们主要复习下面几块内容:


变量与数据类型
输入输出
运算符与表达式


1 变量

我们存储数据,要存储在变量中。变量是程序在执行中用于存储数据并且其值可以改变的量。一般来说,对于变量有如下三大部分:


(1)变量定义
(2)变量赋值
(3)变量操作


1、变量定义


变量定义的格式为:


[变量数据类型] [变量名] (初始赋值操作);


定义时可以定义多个变量,变量名之间用逗号隔开:


[变量数据类型] [变量名1](初始赋值操作), [变量名2](初始赋值操作), ..., [变量名n](初始赋值操作);


变量类型有:


整数类型:int(整型), short(短整型), long(长整型), long long(长长整型/超长整型),……
浮点型(小数类型):float(单精度浮点型), double(双精度浮点型)
字符型:char
字符串:string
布尔类型:bool


变量名的命名规范包括:


(1)只能由数字、字母、下划线组成;
(2)数字不能放开头;
(3)不能是已有的关键字。(一个程序中,不能多次定义同一个变量名)


定义时赋值有如下几种写法:


int a = 1;
int b(1);
int c = d = 1;


2、变量赋值


变量可以边定义,边赋值,也可以先定义,后赋值。变量赋值有如下几种方式:


(1)用值赋值;  //a = 1;
(2)用其他变量赋值; //a = b;
(3)用表达式赋值; //a = 1 + b;
(4)输入赋值; //cin>>a;


3、变量操作


变量操作是很大的一部分,包括运算、判断、输出等等,要和后面的知识结合使用,放在后面,我们慢慢讲。

2 数据类型

数据类型本来是属于变量这一块的,但是它绝对有单独讲解的必要。


数据类型包括:


前缀:const, unsigned
整数类型:int(整型), short(短整型), long(长整型), long long(长长整型/超长整型),……
浮点型(小数类型):float(单精度浮点型), double(双精度浮点型)
字符型:char
字符串:string
布尔类型:bool


0、前缀


我们接触了两个前缀:

一个是用于声明无符号的unsigned前缀。unsigned前缀只能作用于整数类型和字符类型,也就是说只能放在整数类型和char类型前面。


一个是用于声明常量的const前缀。const前缀能作用于我们要使用的这几种数据类型,但是用const声明的常量只能在定义时赋值,不能先定义,后赋值,并且一旦赋值,无法修改值。数字相关类型(整数类型和小数类型)和字符类型必须在定义时赋值,如果不赋值,会报错。string类型如果不在定义时赋值,默认string类型的值为空字符串。


const总结一下:


(1)只能在定义时赋值,不能先定义,后赋值;  
(2)string类型如果定义时不赋值,则该数据为空字符串;
(3)除了string类型其他类型在定义时必须赋值;
(4)常量一旦赋值,就不能再修改;


前缀自然是要写在变量类型前面的,格式为:


[前缀] [变量数据类型] [变量名] (初始赋值操作);


举几个例子:


const int a = 1;
const string s;
unsigned char c = 'a';


1、整数相关类型


整数相关类型包括:


int(整型)
short(短整型)
long(长整型)
long long(长长整型/超长整型)
unsigned (int) (无符号类型)
unsigned long long (无符号超长整型)


一般来说,int满足大部分题目要求,实在不满足的就用long long,再大就用unsigned long long。如果unsigned long long还不能满足要求,就要使用高精度来自己编写相关算法了。


整数类型用于存放整数:


如果你给整数变量赋值小数,它会自动丢掉小数点后的数据;


如果你给整数变量赋值字符,它会自动根据ASCII码转化为对应的10进制数据。


整数类型数据支持的运算有:


算术运算:+(加), -(减), *(乘), /(整除), %(取余), ++, --
关系运算:>(大于), <(小于), >=(大于等于), <=(小于等于), ==(等于), !=(不等于)
逻辑运算:&&(逻辑与), ||(逻辑或), !(逻辑非)
赋值运算:=(赋值),+=(加赋值),-=(减赋值),*=(乘赋值),/=(整除赋值),%=(取余赋值)


2、小数类型


小数类型包括:


float:单精度浮点型
double:双精度浮点型


小数类型能够存储比整数类型更多的数据,能存的数据范围也更大,如果想了解整数类型和小数类型每种数据的范围请看:


​​C++总结 | 13 数据范围与数据类型​​


但是小数类型支持的操作也更少,一般来说,我们小数类型的运算有:


算术运算:+(加), -(减), *(乘), /(除)
关系运算:>(大于), <(小于), >=(大于等于), <=(小于等于), ==(等于), !=(不等于)
逻辑运算:&&(逻辑与), ||(逻辑或), !(逻辑非)
赋值运算:=(赋值),+=(加赋值),-=(减赋值),*=(乘赋值),/=(除赋值)


3、字符类型


字符类型是char类型。char类型在数据赋值的时候,要给值加单引号。


char类型我们主要讲了ASCII码。


我们需要掌握:


空字符:对应的十进制为0;
字符0-9;
大写英文A-Z;
小写英文a-z;


我们需要掌握这四类字符对应的十进制数,能够熟练转换字符和整数。具体请看:


​​C++总结 | 07 数据类型补充​​


4、字符串类型


字符串类型我们目前只需要知道:


所有的数据都能存到字符串里面
数字也能存为字符串,但是一旦存为字符串,就不能做算术运算了
字符串数据要加双引号


5、布尔类型


布尔类型只有两个值:true和false,常用于设置需要判断正误的变量或者只有两种结果的变量。


一般true用1表示,false用0表示。


对于整数和小数类型,0表示false,非零数表示ture。


对于char类型和string类型,空字符和空字符串表示false,非空的字符和字符串表示true。


3 输入输出

我们最先讲的是输出,讲的第一个代码是:


cout<<"hello world";


要使用输出功能,我们必须要添加头文件和命名空间:


#include<iostream> //标准输入输出流,cin,cout,endl
using namespace std; //命名空间


1、输入


输入是cin,输入之前要先定义变量,给多个变量赋值时,变量之间用“>>”隔开。格式为:


cin>>[变量名1]>>[变量名2]>>...>>[变量名n];


2、输出


输出是cout,输出使用的变量要先定义,输出多个内容时,不同类型内容、不同变量名之间用“<<”隔开。格式为:


cout<<[输出内容1]<<[输出内容2]<<...<<[输出内容n];


3、换行


有两种方式用于换行:


endl:iostream头文件中提供的换行语句
'\n':用于换行的转义字符。


4 运算符

我们学了很多运算符,包括:


算术运算符:+(加), -(减), *(乘), /(整除), %(取余), ++, --
赋值运算符:=(赋值),+=(加赋值),-=(减赋值),*=(乘赋值),/=(整除赋值),%=(取余赋值)
关系运算符:>(大于), <(小于), >=(大于等于), <=(小于等于), ==(等于), !=(不等于)
逻辑运算符:&&(逻辑与), ||(逻辑或), !(逻辑非)
其他运算符:括号运算符、逗号运算符


1、算术运算符


算术运算符只能作用于数值类型的数据;/运算符对于小数类型和整数类型含义不同;取余运算、++运算、--运算只能用于整数类型。


+的含义除了数值运算中的加法外,还有一层含义是字符串的附加。例如:


#include<iostream>
using namespace std;

int main(){
string a = "123", b = "456";
a = a + b;
cout<<a<<endl; //123456

return 0;
}


2、赋值运算符


基础赋值运算符“=”适合于所有类型,复合赋值运算符+=(加赋值),-=(减赋值),*=(乘赋值),/=(整除赋值)一般只用于数值类型,+=可以用于字符串的附加,%=(取余赋值)只能用于整数类型。


3、关系运算符


关系运算符中需要强调的是:判断相等用“==”。


4、逻辑表达式


逻辑表达式的优先级为:


!> && > ||


逻辑运算符中涉及到逻辑屏蔽的问题,具体请看:


​​C++总结 | 10 if嵌套与逻辑运算符​​


5、其他运算符


括号运算符用于变量的赋初值、逗号运算符用于多个变量定义。


5 表达式

运算符和变量结合构成表达式,主要包括如下几个:


算术表达式
赋值表达式
关系表达式
逻辑表达式


表达式内容比较简单,让我们在后续的练习中去详细感受它吧!


3 说在后面的话

相信通过这篇文章,大家也能对今天复习的知识有更深刻的感悟了,希望大家能够在后续的学习中,再接再厉,不断提高自己。


如果想要了解更多关于信息学的知识,那就关注我吧!



AI与区块链技术

C++强化 | 01 新学期再出发!温故知新!_数据_02

长按二维码关注


举报

相关推荐

0 条评论