- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二级考试复习重点,vb二级考试复习资料,计算机二级考试复习,c语言二级考试复习,二级计量师考试复习题,人力资源二级考试复习,二级建造师考试复习书,马原考试复习重点考点,司法考试复习重点,二级建造师复习重点
全国计算机等级考试二级C语言复习总结
中南苦情男倾力打造
易错点
输入输出赋值
scanf应对应变量地址,而非变量名。(应为a而非a)
scanf(“%d%d%d”,a,b,c) %d之间不是必须加逗号
给a赋值40000(已定义a为long型)应用a=4000L*10L不可用a=4000*10,因为4000与10均为int,结果也为int,而计算结果超出int范围,会有误差
为结构体数组中的某成员赋值时,scanf(“%s”,std[0].name) 不能把[0]省去,应为std仅代表地址,地址没有成员
注意转义字符
e.g.
注意:1.语句*(ps+4)=0;中的0,实质上是把ASCII码为0的字符(即结束符’\0’)赋予*(ps+4)
2.*(ps+3)是’\n’,即’\n’是一个字符
注意输入格式控制符
数据类型
float转换为int ,应直接舍去小数
若未限制float的输出结果,则写到小数点后六位
e.g.
运算时,注意数据类型,分辨 1/n 和 1.0/n
e.g. 1/2的值为零。
注意进制对各个数位上数字的限制
e.g. 8进制数的数位上不能出现8,16进制数的数位上不能出现G
未指定初值时static初值为0,auto初值随机
注意静态变量
e.g.
应分清共用体与结构体
注意对结构体中成员的调用
e.g.
注意:结构体名.成员名(或 结构体名-成员名),其中的结构体名,必须为结构体,不能是其地址
标识符变量名
局部变量与全局变量重名,则全局变量在该函数中被屏蔽
标识符只能由字母,下划线和数字组成,必须以字母或下划线开头
变量名区分大小写,且不能多于8字符(因编译系统不同而有差别,此处是等级考试原题答案)
define不是保留字,可以做标识符
表达式语句
注意分辨先加和后加
e.g.
if(i==1)不能漏等号
应分辨有无{}
e.g. if(x==y)t=x;x=y;y=z;
e.g.
多次判断的时候,注意防止思维定势
int i=010;中的0表示010是八进制数
转义时用到十六进制,只用x,不用0x
e.g. char a=’\xab’
整数常量以十六进制表示时,只用0x
e.g. int a=0xffa
case若无break,将继续向下执行语句
break只跳出一层循环
注意区别循环条件和循环结束条件
注意do…while 语句先执行循环体
注意分辨while(…){…}语句中,()里的语句是否改变了某些变量的值
e.g
应看清逻辑表达式代表的真实意图与实际作用
注意typedef定义格式
e.g. 定义字符型 typedef char *STP;STP a;
定义结构体 typedef struct stu{…}ABC;ABC a[2];
运算
注意运算优先级
e.g.
e.g.
注意判断逻辑表达式的值是0,1还是其他
注意逻辑表达式中的运算
e.g. (j++||k++)i++中的i++可能不执行
数组
应注意数组足标从零开始
e.g.
仅数组名a表示地址,a[i]应理解为变量名
e.g. scanf(“%d”,a[i])
要用数组作为数据统计的记录结果时,必须在最开始对数组进行初始化。
e.g. 要统计字符串中各字母出现次数,并以此将数据记入数组tt[]时,必须先用for(i=0;i=25;i++)*(tt+i)=0;对数组进行初始化。
注意系统对字符数组进行的自动初始化
e.g.
注意对字符数组赋值的正确方式
char s[]={”hello!”}; (花括号可省略)
初始化后,s的长度为7而非6,因为以字符串形式对初始化字符数组,末尾要加上’\0’
注意区别strlen()和sizeof()
函数
注意形参是值传递
不应擅自将return X格式改为return(X)格式(尽管等价,但考试系统回判错,特别是填空题)
注意在调用其他函数以后,还有没有语句
递归时注意执行顺序
指针
void inv(int *x,int n) 数组名对应形参不写作(*x)[]
注意指针自增后的指向
e.g. char *p;s[1]=”two”;p=s[1];p++;最终p指向w,而非s[2]
注意在使用malloc()开辟空间时,必须指定指针类型
e.g. (struct stu *)malloc(sizeof(struct stu));
区别交换的是*a *b还是a b
指针未指向有效空间时,严禁对该空间赋值
注意指针函数的概念
文件
分清有关函数
文件f到达结尾时,feof(f)返回1,否则返回0
fread(buffer,size,count,fp); buffer为指针,指向读入数据的存放地址。
原创力文档


文档评论(0)