408计算机考研-001-C语言-C语言基础-考研必学
考研C语言应掌握的内容
计算机408考纲内容:
能够运用数据结构基本原理和方法进行问题的分析与求解,具备采用 C 或 C++语言设计与实现算法的能力。
从下面几道真题题目中我们可以知道需要掌握C语言的如下知识:
数据类型:了解C语言的基本数据类型(整型、浮点型、字符型等),以及如何声明和使用变量。
运算符:熟悉C语言的算术运算符、关系运算符、逻辑运算符等,以及它们的优先级和结合性。
控制流程:理解C语言的条件语句(if-else语句、switch语句)和循环语句(for循环、while循环),以及如何使用它们控制程序的执行流程。
函数:掌握如何定义、调用和传递参数给函数,以及如何使用函数来组织代码和实现模块化。
数组和指针:了解如何声明、初始化和操作数组,以及如何使用指针来访问数组元素和动态分配内存。
结构体和联合体:了解如何定义和使用结构体和联合体,以及它们如何用于组织和管理复杂的数据。
C语言中的常用函数:熟悉如常见的字符串处理函数,如strlen、strcmp、strcpy等。
考研真题
2022 年考研真题第 1 题

2022 年考研真题第 41 题

2021 年考研真题第 42 题
一、打印:Hello, World
首先先来看看最经典的C的Hello,World程序吧。
二、数据类型
1. 基本数据类型
三、运算符
四、流程控制
五、函数
六、数组和指针
1.数组
2.指针
C语言中的指针是一种特殊的数据类型,它用来存储变量的地址。指针变量表示的是一个内存地址,可以用来访问和修改该地址处的数据。
指针的声明形式为:数据类型 * 指针变量名;例如:int * p; 表示声明了一个指向整型数据的指针变量p。
使用指针变量时,可以通过解引用操作符*来访问该指针所指向的内存地址处的数据。例如:*p 表示访问指针p所指向的整型数据。
指针的主要作用是在函数间传递参数和动态分配内存。通过传递指针参数,可以在函数中修改实际参数的值。通过动态分配内存,可以在程序运行时动态申请和释放内存空间,实现灵活的内存管理。
使用指针时需要注意一些细节问题,如指针的初始化、指针的比较、指针的运算等。同时,在使用指针时还要注意避免空指针和野指针的出现,以免引起程序崩溃或数据错误的问题。
3.动态内存分配
C语言通过使用指针来管理内存,手动分配和释放内存。
C语言中有两种主要的内存分配方式:静态分配和动态分配。
静态分配是在程序编译时进行的,在程序运行时分配固定大小的内存。静态分配的内存是通过声明变量和数组来完成的。例如,当你声明一个整型变量时,编译器会为它分配必要的内存。
动态分配是在程序运行时进行的,在程序运行时根据需要分配内存。动态分配的内存是通过C标准库函数malloc()和calloc()来完成的。
内存分配函相关数
malloc():动态分配指定大小的内存块,并返回一个指向分配内存的指针。如果分配失败,则返回NULL。
calloc():动态分配指定数量和大小的内存块,并返回一个指向分配内存的指针。calloc()函数在分配内存块之前会将其初始化为0。如果分配失败,则返回NULL。
realloc():重新分配之前分配的内存大小,可以调整内存的大小。如果分配失败,则返回NULL。
ree(): 将先前分配的内存块返回给系统。
七、结构体和联合体
1.结构体
结构体是一种用户定义的数据类型,可以用来存储多个不同类型的数据项。结构体可以包含多个成员,每个成员可以是任意数据类型,包括基本类型(如整数和浮点数)和其他结构体类型。
八、常用函数
1. printf():用于打印输出。
2. scanf():用于输入数据。
3. strcmp():用于比较两个字符串是否相等。
4. strlen():用于获取字符串的长度。
5. strcpy():用于将一个字符串复制到另一个字符串。
6. strcat():用于将一个字符串连接到另一个字符串的末尾。
7. atoi():用于将字符串转换为整数。
8. atof():用于将字符串转换为浮点数。
9. rand():用于生成随机数。
10. malloc():用于动态分配内存。
11. free():用于释放动态分配的内存。
总结
看到这里大家应该也能够对于C语言有个基本的了解了吧,对于考研中的408C语言中的知识差不多也就是上面那些了。
了解了C语言的基本知识之后就可以开始学习数据结构了。
如果大家还是不懂的话可以直接去看B站上面老师们的视频,或者看看下面的资料。
参考资料
• 《C Primer Plus》第六版
• 计算机 408 历年考研真题
• 计算机 408 考研大纲
• ChatGPT
• 牛客网C语言入门教程