C语言期末考试全部知识点复习资料--重点常考点.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C语言期末考试全部知识点复习资料--重点常考点.docx》由会员分享,可在线阅读,更多相关《C语言期末考试全部知识点复习资料--重点常考点.docx(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C语言知识点复习资料考试是难得的训练自己的机会,在特定的时间、特定的地点、特定的气氛下,你需要调动各 方面的能力.而在每一次考试中,我都下意识地应用自己摸索出来的“目标控制法】故到了每次 考试有有收获和进步。每次考试前,我都会在一张白纸上写满通过本次考试要达到的目标:要注意克服哪些易犯 的错误,尤其是要克服前几次考试中暴露出来的共性的失误;要积累哪些经验,应用哪些技巧, 比如选择题中的特征值法;要在多长的时间内完成卷面各部分,比如,争取35分钟内完成数 学试卷中的选择题和填空题;要培养锻炼哪些考试应试的心理素质等。也就是说,我们要把考试看成是一个完整的流程,包括考前准备、考场发挥和考后调整三个
2、 阶段。同学中存在的误区往往是只注意考前的准备和考场的发挥两个阶段,对考后调整注意 不够.事实上,高考之前的每一次模拟考试,最重要的就是考试后的总结与反思,只有这样, 才能认识到自己的薄弱环节,不断提高考试能力。所以,有心的同学一定要注意做好健全的 考后调整,不断提高自己的实力。总体上必须清楚的:1 .程序中基本的控制结构是三种:顺序结构、选择结构(分支结构)、循环结构。2 .读程序都要从main。入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数.3 .计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是它的地址.4 . bit是位是指为0或者1
3、。byte是指字节,一个字节二八个 位.5 .编译预处理不是C语言的一部分,不占运行时间,不要加分号。(常考!)define PI 3. 1415926; 这个写法是错误的,一定不能出现分号.6O每个C语言程序中main函数是有且只有一个。7.用C语言编写的程序称为源程序,扩展名是.c。C程序必须经过编终端输入:1234567scanf ( %2d%4d%d” , &x, &y,&z); x 为 12, y 为 3456, z 为 7终端输入:1 234567 由于1和2中间有空格,所以只有1位给xscanf ( 2d%4d%d”,&x, &y, &z) ; x 为 1, y 为 2345,
4、z 为 675)补充说明:a) scanf函数的格式考察:注意该函数的第二个部分是&a这样的地址,不是a;scanf (“%i%d%*d%d”,&a, &b, &c);跳过输入的第三个数据。b) putchar , getchar 函数的考查:char a = getchar ()是没有参数的,从键盘得到你输入的一个 字符给变量a。putchar ( y)把字符y输出到屏幕中.c)如何实现两个变量x , y中数值的互换(要求背下来)不可以把x=y,尸x;要用中间变量t=x;x=y;y=t;if语句特别要注意:C语言中是用非0表示逻辑真的,用0表示逻辑假的。C语言有构造类型,没有逻辑类型.if只
5、管后面一个语句,要管多个,请用大括号!注意以下规则:1) else是与最接近的if且没有else的语句匹配。2) if(ab) t=a;a二b;b=t;if (a b) t=a;a=b; b=t; )两个的区别,考试多次考到了!3) 单独的if语句:i句ab) t=a;标准的 if 语句:if (a b)min = a; else min 二 b;嵌套的if语句:if (ab)if (b) c)printf ( ok!);多选一的 if 语句 if (at) printf ( a);else if (bt) printf ( “b”);else if(c=t) printf( c” );els
6、e pritnf( d );通过习题,要熟悉以上几种if语句!4)条件表达式: 表达式1 ?表达式2 :表达式3a)考试口诀:真前假后。b)注意是当表达式1的数值是非0时,才采用表达式2的数值做 为整个运算结果,当表达式1的数值为0时,就用表达式3的数值做 为整个的结果。c) int a=l, b=2, c=3,d=4, e=5;k二ab? c: de? d: e;求k的数值是多少?答案为55) switch 语句:a)执行的流程一定要弄懂!上课时候详细的过程讲了,请自己一定弄 懂!b)注意有break和没有break的差别,书上的两个例子,没有break 时候,只要有一个case匹配了,剩下
7、的都要执行,有break则是直接 跳出了 swiche语句。c) switch只可以和break 一起用,不可以和continue用。d) switch(X) X:是整型常量,字符型常量,枚举型数据。(case 1:. 不可以是变量。case 2:。22.三种循环结构:a) for () ; while (); do- while ()三种。b) for循环当中必须是两个分号,千万不要忘记。c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了 死循环。d) do一while ()循环的最后一个while ();的分号一定不能够丢。(当心上机改错),do-while循环是至少执行一次循环
8、。e) break 和 continue 的差别break:是打破的意思,(破了整个循环)所以看见break就退出整 个一层循环.continue:是继续的意思,(继续循环运算),但是要结束本次循环, 就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条 件,进行新一轮的循环。f)嵌套循环就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐 心的计算,一般记住两层是处理二维数组的.g) while( ( c=getchar()! = ? n,) 和 while(c=getchar()二)的差别先看a=3 !=2和(a=3) !二2的区别:(!二号的级别高于二号所以第一个先计算3!
9、二2)第一个a的数值是得到的1;第二个a的数值是3。h)每行输出十个的写法:for (i=0; i =100; i+) printf ( %d , i);if (i+1) %100)printf ( anv );如果i是从1开始的话,就是if(i%5=0) printf ( n );)i)如何整除一个数:i%5=0 表示整除5i%2-0表示整除2,同时表示是偶数!j)输入123,输出321逆序输出数据int a=123;while (i!=0) printf ( %d” ,i%10);i=i/10;)k) for只管后面一个语句:int i=3;for (i=3; i 6;i+);printf
10、(# );请问最终打印几个#号?答案为一个!不停的输入,9)不停的输入,直到输入#停止输入!直到输入$停止输入!while ( (x=getchar ()!=#)while( (x=getchar ()!= $ )23.函数1)函数:是具有一定功能的一个程序块,是C语言的基本组成单位。2)函数不可以嵌套定义.但是可以嵌套调用。3)函数名缺省返回值类型,默认为into4) C语言由函数组成,但有且仅有一个main函数!是程序运行的开 始!5)如何判断a是否为素数:背诵这个程序!void isprime ( int a ) for (i=2;i pow() strcmp() strcpy ()、s
11、trlen()o24.指针:指针变量的本质是用来放地址,而一般的变量是放数值的。1)定义:int *p;后,表达式中*p和p的差别:简单说*p是数 值,p是地址!*p可以当做变量来用;*的作用是取后面地址p里面的数值P是当作地址来使用。可以用在scanf函数中:scanf ( %d, p);2) *p+和(*p) +的之间的差别:改错题目中很重要!考试超级重 点*p+是 地址会变化。口诀:取当前值,然后再移动地址!(*p)+是数值会要变化。口诀:取当前值,然后再使数值 增加lo例题:int *p, a = 1, 3, 5, 7, 9);P=a;请问*p+和(*p) +的数值分别为多少?*p+:
12、这个本身的数值为10由于是地址会增加一,所以指针指向数值3 了。(*p)+这个本身的数值为1。由于有个+表示数值会增加,指 针不移动,但数值1由于自加了一次变成了 20 3)三名主义:(考试的重点)数组名:表示第一个元素的地址。数组名不可以自加,他是地址常 量名。(考了很多次)函数名:表示该函数的入口地址。字符串常量名:表示第一个字符的地址。4)移动指针(经常加入到考试中其他题目综合考试)char *s= meikanshu”while (*s) printf ( %c , *s); s+; 这个s首先会指向第一个字母m然后通过循环会一次打印出一个字符, s+是地址移动,打印了一个字母后,就会
13、移动到下一个字母! 5)指针变量两种初始化(一定要看懂)方法一:int a=2, *p=&a;(定义的同时初始化)方法二:int a=2, *p;(定义之后初始化)p=&a;6)传数值和传地址(每年必考好多题目)void fun (int a, int b)void fun(int *a,int *b) int t ;t二a;a=b; b=t;*b; *b=t;main () int x=l, y=3,fun(x, y);printf ( % d, %d,x , y );(%d, %d”,x, y);这个题目答案是1和3O就是3和1。传数值,fun是用变量接受,所以fun中接受!这个时候fun
14、的交换不会影响到main中的x和y .到main中的x和yo传数值,形参的变化不会影响实参.多数会影响到实参! int t ;t二*a; *a=main () int x=l, y=3, fun(&x, &y)printf)这个题目的答案传地址,fun用指针中的交换,就会影响传地址形参的变化绝大7)函数返回值是地址,一定注意这个*号 int*fun (int *a, int*b) 可以发现函数前面有个*,这个就说明函数运算结果是地址 if(*a*b) return a; return a可以知道返回的是a地址.else return b;main () int x=7, y=8,*max;ma
15、x = fun (&x, &y); 由于fun (&x, &y)的运算结果是地 址,所以用max来接收。printf ( d, 火max);8)考试重要的话语:指针变量是存放地址的.并且指向哪个就等价哪个,所有出现大P的地方都可以用它等价的代替。例如:int a=2, *p=&a;*p二*p+2;(由于*p指向变量a ,所以指向哪个就等价哪个,这里*p等价于a ,可 以相当于是a=a+2)25O数组:存放的类型是一致的。多个数组元素的地址是连续的。1) 一维数组的初始化:int a5= 1,2, 3,4,5;合法int a5 = 1, 2, 3, ; 合法int a = 1, 2, 3, 4,
16、 5);合法,int a5= 1, 2, 3, 4, 5, 6);不合法,赋值的个数多于数组的个数辑、编译、链接、运行四个步骤才可得到运行结果。注意.C和。obj文件时无法运行的,只有.exe文件才可以运行。(常考!)8O C语言书写格式是自由的,每行可以写多个语句,一条语句也可以 写在多行.9. 一个C语言程序有且只有一个main函数,是程序运行的起点.10o Cfree. VC/VC+、CodeBlock等是软件,用来运行写的C语言程 序.(编译环境)11.标识符(必考内容):合法的要求是由字母,数字,下划线组成。有其它元素就错了。并且第一个必须为字母或则是下划线。第一个为数字就错了 12
17、o标识符分为关键字、预定义标识符、用户标识符.关键字(P259):不可以作为用户标识符号.main define scanf printf都不是关键字.迷惑你的地方是If、Main等可以做为用户标识 符.因为If、Main中的第一个字母大写了,所以不是关键字和特定字 了.预定义标识符:如define scanf printf include.记住预定 义标识符可以做为用户标识符,但因为它们有特定含义,一般不做用户 标识符。用户标识符:可作为常量名、变量名、函数名、构造类型名等。 13o整型常量:C语言只有八、十、十六进制整数,没有二进制.但 是运行时候,所有的进制都要转换成二进制来进行处理。(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言期末考试全部知识点复习资料-重点 常考点 语言 期末考试 全部 知识点 复习资料 重点 考点
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内