《2022年C语言常考点总结.docx》由会员分享,可在线阅读,更多相关《2022年C语言常考点总结.docx(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -C 语言最重要的学问点复习资料总体上必需清晰的 : 1、程序结构是三种 : 次序结构 , 循环结构 三个循环结构 , 挑选结构 if 和 switch 2、读程序都要从 main 入口 , 然后从最上面次序往下读 遇到循环做循环 ,遇到挑选做挑选 ;3、运算机的数据在电脑中储存是以二进制的形式 . 数据存放的位置就是它的地址 . 4、bit是位是指为 0或者 1; byte是指字节 , 一个字节 = 八个位 . 5、肯定要记住二进制如何划成十进制;概念常考到的:、编译预处理不是C 语言的一部分,不占运行时间,
2、不要加分号;C 语言编译的程序称为源程序,它以ASCII 数值存放在文本文件中;、每个 C 语言程序中 main 函数是有且只有一个;、在函数定义中不行以再定义函数;、算法的是肯定要有输出的,他可以没有输入;、 break 可用于循环结构和 switch 语句;、逗号运算符的级别最低;第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成;有其它元素就错了;并且第一个必需为字母或就是下划线;第一个为数字就错了;关键字不行以作为用户标识符号;方If 是可以做为用户标识符;由于2)实型数据的合法形式:main define scanf printf 都不是关键字;困惑你的地 If 中
3、的第一个字母大写了,所以不是关键字;2.333e-1 就是合法的,且数据是 2.333 10-1;考试口诀 :e 前e 后必有数, e 后必为整数; . 3)字符数据的合法形式::1是字符串占两个字节含有一个终止符号;1 是字符占一个字节,0 的ASCII 数值表示为 48,a 的 ASCII 数值是 97,A 的ASCII 数值是 65;一般考试表示单个字符错误的形式:65 1 字符是可以进行算术运算的,记住:0-0=48 大写字母和小写字母转换的方法:A+32=a 相互之间一般是相差 32;4) 整型一般是两个字节 , 字符型是一个字节,双精度一般是 4 个字节:考试时候一般会说,在 16
4、 位编译系统,或者是 32 位系统;遇到这种情形,不要去管,一样做题; 把握整型一般是两个字节 5)转义字符的考查:, 字符型是一个字节, 双精度一般是 4 个字节就可以了;细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 1 页,共 8 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -在程序中int a = 0x6d ,是把一个十六进制的数给变量a 留意这里的 0x 必需存在;在程序中 int a = 06d, 是一个八进制的形式;在转义字符中, x6d 才是合法的, 0
5、不能写,并且 x 是小写; 141 是合法的,0 是不能写的; 108是非法的,由于不行以显现 8;6)算术运算符号的优先级别:同级别的有的是从左到右,有的是从右到左;7)强制类型转换:肯定是(int)a 不是int(a),留意类型上肯定有括号的;留意( int)( a+b) 和( int) a+b 的区分;8)表达式的考查:是表达式就肯定有数值;前是把 a+b 转型,后是把 a 转型再加 b;赋值表达式:表达式数值是最左边的数值,a=b=5; 该表达式为 5,常量不行以赋值;自加、自减表达式:假设 a=5,+a(是为 6), a+(为 5);运行的机理: +a 是先把变量的数值加上 1,然后
6、把得到的数值放到变量 a 中,然后再用这个+a 表达式的数值为 6,而 a+是先用该表达式的数值为 5,然后再把 a 的数值加上 1 为 6,再放到变量 a 中; 进行了 +a 和a+后 在下面的程序中再用到 考试口诀 :+ 在前先加后用,+在后先用后加;a 的话都是变量 a 中的 6 了;逗号表达式 :优先级别最低; 表达式的数值逗号最右边的那个表达式的数值;(2,3,4)的表达式的数值就是 4;9)位运算的考查:总的处理方法: 几乎全部的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制);例1: char a = 6, b; b = a2; 这种题目的运算是先要把a 的十
7、进制 6 化成二进制,再做位运算;例2: 肯定要记住,异或的位运算符号;0 异或1 得到 1;0 异或 0 得到 0;两个女的生不出来;1 异或 1 得到 0;两个男的生不出来;考试记忆方法 :一男 1一女 0才可以生个小孩 1;例3: 在没有舍去数据的时候,右移一位表示除以 2;10) 018 的数值是非法的,八进制是没有 8 的,逢 8 进1;11) % 符号两边要求是整数;不是整数就错了;12 三种取整丢小数的情形:、 int a =1.6;、 inta;、 1/2; 3/2;13字符型和整数是近亲:char a = 65 ; printf“%c”得到的输出结果:a printf“%d”
8、得到的输出结果:65 其次章1)printf 函数的格式考查:%d 对应整型; %c 对应字符; %f 对应单精度等等;宽度的,左对齐等修饰;细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 2 页,共 8 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -%ld 对应 long int ;%lf 对应 double;2)scanf 函数的格式考察:留意该函数的其次个部分是 &a 这样的地址,不是 a;scanf“%d%d%*d%d”,&a,&b,&c; 跳过输入的第三个数据;
9、3)putchar ,getchar 函数的考查:char a = getchar 是没有参数的,从键盘得到你输入的一个字符给变量 a;putchar把字符 y 输出到屏幕中;4)如何实现两个变量 x ,y 中数值的互换(要求背下来)不行以把 x=y ,y=x; 要用中间变量 t=x;x=y;y=t ;5)如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)这个有推广的意义,留意x = (int)x 这样是把小数部分去掉;第三章特殊要留意: c 语言中是用非 0 表示规律真的,用 0 表示规律假的;1)关系表达式:达式的数值只能为 1(表示为真),或 0(表示假)当关系的表达是为真的时候
10、得到 1;如 98 这个是真的,所以表达式的数值就是 1;2)规律表达式:只能为 1(表示为真),或 0(表示假)a 共有 & | ! 三种规律运算符号;b !&| 优先的级别;c 留意短路现象;考试比较喜爱考到;d 要表示 x 是比 0 大,比 10 小的方法; 0x10 是不行以的(肯定记住);是先计算0x 得到的结果为 1 或就 0;再用 0,或 1 与10 比较得到的总是真(为 1);所以一定要用 0x&x第一行a1 4 5 6 其次行a2 7 8 9 第三行步骤二:这样作题目间很简洁:*a0+1 我们就知道是第一行的第一个元素往后面跳一列,那么这里就是 a01 元素,所以是;*a1+
11、2 我们就知道是其次行的第一个元素往后面跳二列;那么这里就是 a12 元素,所以是 6;肯定记住: 只要是二维数组的题目,肯定是写成如上的格式,再去做题目, 这样会比较简洁;3 数组的初始化,一维和二维的,一维可以不写,二维其次个肯定要写int a=1 ,2 合法;int a4=2 ,3,4 合法;但int a4=2 ,3,4 非法;4 二维数组中的行指针int a12 ;其中 a 现在就是一个行指针,a+1 跳一行数组元素;搭配( *)p2 指针a0, a1现在就是一个列指针;a0+1 跳一个数组元素;搭配 *p2 指针数组使用5 仍有记住脱衣服法就:a2 变成*( a+2)a23 变成*(
12、 a+2)3 再可以变成*(*( a+2)+3)这个思想很重要!其它考试重点文件的复习方法 :把上课时候讲的文件这一章的题目要做一遍,肯定要做,基本上考试的都会在练习当中;1)字符串的strlen 和 strcat() 和strcmp()和strcpy()的使用方法肯定要记住;他们的参数都是地址;其中strcat() 和strcmp()有两个参数;2)strlen 和 sizeof 的区分也是考试的重点;3)define f(x)( x*x ) 和 define f(x) x*x 之间的差别; 肯定要好好的留意这写 简洁错的地方,替换的时候有括号和没有括号是很大的区分;4) int *p ;p
13、 = (int * )malloc(2);p = (int * )malloc(sizeof(int);以上两个等价细心整理归纳 精选学习资料 当心填空题目,malloc 的返回类型是void * 第 6 页,共 8 页 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -5)仍有 main(int argc,char *argv) 这种含有参数的题目,是很呆板的题目;第一个参数是表示输入的字符串的数目,其次个参数是指向存放的字符串;6)函数的递归调用肯定要记得有终
14、止的条件,并且要会算简洁的递归题目;要会作递归的题目7)结构体和共用体以及链表要把握最简洁的;typedef 考的许多,而且肯定要知道如何引用结构体中的各个变量,链表中如何填加和删除节点,以及何如构成一个简洁的链表,肯定记住链表中的节点是有两个域,一个放数值,一个放指针;8)函数指针的用法(*f )()记住一个例子:int addint x, int y . main int (*f )() ;f=add; 赋值之后:合法的调用形式为、add2,3;、 f2,3;、( *f )( 2, 3)9)两种重要的数组长度:char a=a, 数组长度为,字符串长度不定;sizeofa为;char a5
15、= a, 数组长度为,字符串长度;sizeofa为;10) scanf 和 gets 的数据:假如输入的是 good good study!那么 scanf “ %s” ,a; 只会接收good. 考点:不行以接收空格;getsa; 会接收 good good study. 考点:可以接收空格;11)共用体的考查:union TT int a; char ch2; 考点一:sizeof struct TT = 2; 考点二:TT t1 ; t1=0x1234; 那么 ch0=0x 34; ch1=0x1212“ 文件包含” 的考查点:no1.c no2.c#include” no2.c ”in
16、t addint a,int b main add29 , 33; return a+b; . 这里一个 C 语言程序是有两个文件组成,分别是no1.c, no2.c;那么 no1.c 中最开头有个#include ” no2.c ”他表示把其次个文件的内容给包含过来,那么no1.c 中调用 add函数的时 第 7 页,共 8 页 - - - - - - - - - 候就可以了把数值传到no2.c 中的被调用函数add了;一个文件必需要有main 函数;这句话错了;例如: no2.c 就没有;头文件肯定是以.h 终止的;这句话错了;例如:no1.c 中就是 #include ” no2.c ”以 .c 结尾的;细心整理归纳 精选学习资料 - - - - - - - - - - - - - - -名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 8 页,共 8 页 - - - - - - - - -