在学习任何新技术的时候,我们最好的帮手就是搜索引擎,善于使用搜索引擎会帮助我们快速掌握新技术。
百度上对C++的解释是:
C++是一种计算机高级程序设计语言,由C语言扩展升级而产生 ,最早于1979年由本贾尼·斯特劳斯特卢普在AT&T贝尔工作室研发。
通俗的讲C++就是一门语言,和我们平时接触的汉语,英语,法语没什么区别,只不过这种语言是给计算机读的,所以我们要学习对应的语法规则,让计算机能读的懂,同时人也能读的懂。
那么学编程语言有什么用呢?
要比赛[doge],当然这是一个最最基本的原因啦,编程比赛至少要掌握一门编程语言。但是除此之外呢?
最重要的是编程思维的培养,未来的社会各行各业都需要编程,即使最后没有从事互联网行业,有了编程思维将有助于从事各行各业,对于低年龄段的同学来说,学习编程也可以培养数学思维,编程的尽头就是数学。
其次就是编程语言的工具属性,比如现在你要给几千行的文本添加一个句号,如果你没学过编程,你可能会一个一个去标,但是学过编程之后,花2分钟写一个程序,一秒钟就可以完成工作。
2、编译器准备 下载
工欲善其事必先利其器
首推DEV C++,特点是简单不用配置,开箱即用,
官网下载地址:https://www.bloodshed.net/ 可能会被墙,不行就用下面的镜像
镜像下载地址:https://sourceforge.net/projects/orwelldevcpp/
百度网盘下载:链接:https://pan.baidu.com/s/1wYHRgtjqnWkCPpZWGVgBIg
提取码:6uoj
下载后建议打开C++11,具体操作可以参考这篇文章:https://blog.csdn.net/try17875864815/article/details/104796758
其次是VSCode,配置较麻烦,可参考这篇文章:https://zhuanlan.zhihu.com/p/87864677
我的建议是使用devc++,避免VSCode繁琐配置消磨耐心。
使用建议一个文件夹,例如C++初级代码,在devc++里新建源代码文件,保存在此文件夹内,文件名随便怎么定义,一般来说都是按照题目名来定义。
3、第一个C++程序
接下来我们就开始学习第一个C++程序,Hello,World!
#include--->头文件,使用万能头文件 using namespace std; --->意思是使用标准命名空间,一般程序导入这个就够用了 int main() --->主函数 { cout<<"Hello,World"< 输出“Hello,World” return 0; --->返回0 }
在几乎所有编程语言中,我们都有标注当前代码含义的需求,所以我们可以在代码中使用注释,注释是不会影响我们的代码逻辑的,也不会被编译。在C++中我们使用//来表示单行注释,用表示多行注释。
现在你对C++程序已经有了一定的了解了,不难发现有些代码是重复的,那么这些重复的代码在我们每次做题都可以先敲出来,然后再去写具体的代码。
这段重复的代码如下
#includeusing namespace std; int main() { return 0; }
4、示例程序
首先我们来看一个经典的C++程序(输入两个数,求和并输出在屏幕上)
#includeusing namespace std; int main() //主函数首部 { //函数体开始 int a,b,c; //定义变量---声明语句 cin>>a>>b>>c; //输入数据---输入语句 c = a + b; //计算---赋值语句 cout< 上述程序一共有四个部分
- 定义变量
- 指定变量的数据类型,上题使用的是int 即整型变量
- 指定变量名称,上题使用三个英文字母作为变量的名称
- 输入数据
- cin >>变量1>>变量2>>变量3 ……
- 计算
- 一个等号用于赋值,上题将a + b 的结果赋值给c
- c 变成a + b的值
- a 和 b 大小不发生改变
- 输出计算结果
- cout<<结果1<<结果2<<….
注意:每行语句的结束要加封号(;)
接下来详细介绍一下声明语句、赋值语句和输入输出语句
声明语句数据都要他的类型,这规定了他的特性,可以方便编程者使用。
常见的数据类型
定义变量
语句格式:数据类型 变量1,变量2,变量3…变量n;
示例
int a,b,c; float a1,b2,c3; double x,y,z; bool flag; char zf;变量命名规则
- 只能使用英文字母、数字和下划线(_)
- 第一个字符不能是数字
- 不能是系统的保留字(关键字)
- 区分大小写
系统保留字(不用刻意去记,出错了再来看看,这样记忆深刻,我也背下来,单纯背没有意义)
赋值语句格式:变量 = 表达式;
示例
int a;//定义变量a a = 5; a = a + 5;//加法 ---> 可以简写成 a += 5; a = a * 2;//乘法 ---> 可以简写成 a *= 5; a = a / 2;//除法 ---> 可以简写成 a /= 5; a = a - 2;//减法 ---> 可以简写成 a -= 5; a = a % 2;//取模 ---> 可以简写成 a %= 5; //对于a = a + 1只增加1或者只减少1,可以使用自增或者自减 自增:a++; 或者++a; 自减: a--; 或者--a;输入输出语句读入:cin>>变量1>>变量2….;
注:cin默认不会读入空格和换行
输出:cout<<结果<
注:endl是换行的意思
格式化输出小数setprecision(n)
cout<
5、例题A + B问题是一个很经典的入门程序,我们挑选一个OJ(Online Judge 网上测评)来测试一下我们的程序是否正确。
题目链接:https://www.acwing.com/problem/content/1/
提交后发现,结果显示Accepted 说明我们的程序是正确的,可以通过所有测试点。
6、常见评测结果
AC Accepted 通过 WA Wrong Answer 答案错误 TLE Time Limit Exceed 超时 OLE Output Limit Exceed 超过输出限制 MLE Memory Limit Exceed 超内存 RE Runtime Error 运行时错误 PE Presentation Error 格式错误 CE Compile Error 无法编译
7、更多练习题目链接如下
- https://www.luogu.com.cn/problem/P5703
- https://www.luogu.com.cn/problem/P5708
- https://www.luogu.com.cn/problem/P5706
- https://www.luogu.com.cn/problem/P5705
- https://www.luogu.com.cn/problem/P1425
- https://www.luogu.com.cn/problem/P5709



