入门的大家随便搜搜学起来都不会出错,进阶的推荐1本豆瓣评分9.1,这本经典之作真正地让人搞懂了烦人的指针。
指针为什么如此重要?C语言圈内有一句经典的自嘲:C语言就只有指针可以用了。如果你干掉struct、干掉union、干掉数组、甚至你把if-while都干掉、只留下malloc和goto,最多就是程序难写一点而已;但如果你把指针干掉,那C语言就完了。你会用指针、用好指针之后,就能发挥C语言的强大威力;如果你不会用,C语言其实不会比其他的任何一种语言好。所以当你想要进阶你的C语言能力时,对指针有一个深入而完整的理解是必不可少的。
当你掌握了C语言的基本语法、或是具备一定的编程经验后,千万不要因为“为什么循环很重要”以及“何时需要使用if语句”等肤浅问题耽误进程,不论你想要进阶的原因是钻研C语言本身、还是想要以C为基础得到更好的职业发展。
学c语言总体上必须清楚的:
1)程序结构是三种: 顺序结构 、选择结构(分支结构)、循环结构。
2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。
3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是 他的地址.
4)bit是位 是指为0 或者1。 byte 是指字节, 一个字节 = 八个位.
易混淆的概念:
1)编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。
2)#define PI 3.1415926; 这个写法是错误的,一定不能出现分号。
define a 1+2 define a (1+2)
a=a*a=1+2*1+2=5 a=a*a=3*3=9
3)每个C语言程序中main函数是有且只有一个。
4)在函数中不可以再定义函数。
5)算法:可以没有输入,但是一定要有输出。
6)break可用于循环结构和switch语句。
7)逗号运算符的级别最低,赋值的级别倒数第二。
知识难点:
1)指针部分。
2)数组部分.
3)函数栈帧的创建与销毁。
4)可变参数列表。
全国计算机等级考试的朋友们有人可以根据这张思维导图继续好好复习了
计算机全国等级考试二级c语言教程_哔哩哔哩https://link.zhihu.com/?target=https%3A//www.bilibili.com/video/BV1YW411W71y/%3Fspm_id_from%3D333.999.0.0
- 考试基本要求
- 环境安装
- 第一个C语言程序
- C语言代码风格
- 数据类型分类
- 整型数据
- 字符型数据
- 浮点型数据
- 变量和常量
- 运算符分类