- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机二级考试C语言常错知识点;1. 数据溢出
int a = 32767;
a = a + 1;
此时a的值为 –32768
2.设a=5, b=6, c=7, d=8, m=2, n=2
执行 (m = a b) ( n = c b)
结果:n 的值为 2
解析:是短路运算符,当左边表达式的值为0时,不再执行右边的表达式;3. 1 / 2 = 0
1.0 / 2 = 0.5
-11%3 = -2
11%-3 = 2
4. 转义字符
遇到’\’字符应注意转义字符问题,比如’\\’,’\ddd’就是转义字符
常见考法:Q:”a\045+045\b”有几个字节?
A:8个字节
(分别是 ’a’, ’\045’, ’+’, ’0’, ’4’, ’5’, ’\b’, ’\0’ )
Q:”12345\678\09abcdfg”有几个字节?
A: 个字节;字符串结束符
如上题,”a\045+045\b”含有最后的字符串结束符’\0’,因而长度为8个字节
注意:计算字符串长度时,sizeof会将’\0’计算在内,strlen()则不算
Main()
{
char b[ ] = “hello, you”;
b[5] = 0;
printf(“%s\n”, b);
}
运行结果:hello
解析:b[5]=0 ;等价于 b[5] = ‘\0’;;5. ++ i , i ++;
x = 5;
y1 = x++ * x++;
y2 = ++x * ++x;
此时y1的值为25,y2的值为49
i=3;
printf(“%d,%d,%d”,i--,i,i++);
输出结果为:4,4,3;6. printf
考法1
x = 11, y = 10;
printf(“%d, %d”, (x++, y), y++);
输出结果:11,10
解析:
1) printf函数按参数从右到左顺序进行分析
y++ - x++ - y
| |
10,后y变11 11
2) 分析结束,输出顺序是从左到右;即:11, 10
考法2
printf(“%4s”, “abc”); // 输出结果 (空格)abc
printf(“%-4s”, “abc”); // 输出结果 abc(空格)
printf(“%4s”, “abcde”); // 输出结果 abcde
printf(“%9.3f”, 12.3456); // 输出结果 1.234e+01;7. scanf
scanf(“%7.2f”, a); // 错,不能规定精度
scanf(“%3d”, a); // 正确
scanf(“%d:%d”, a, b); // 输入格式:整数:整数
例 12:34
scanf(“%3c”, ch); // 正确。但是ch只取输入字符中的第一个字符
// 例:输入abc,则ch值为’a’;8.注意switch中的break ;9. while (a = 1) { … } // 注意这里是赋值号
if(432) { … } // ??条件是不成立的
10. for( x = 0, y = 3, i = 0; (y 3)(x 4); x++, y++ ) i++;
运行结果 i = 0
解析:for循环运行过程 表达式1-表达式2- 循环体-表达式3;11. 数组
int a[10] = {0, 1, 2, 3} // 正确。前四个元素赋值,后6个元素全为0
int a[2][2] = {1,2,3,4} // 正确
int a[ ][2] = {1,2,3,4} // 正确。第一维可以省略
int a[2][ ] = {1,2,3,4} // 错误。非第一维不能省略;12. 预处理
定义宏:#define s(x) x*x
表达式 s(a+b) 宏展开为: a + b*a + b
定义宏:#define s(x) (x)*(x)
表达式 s(a+b) 宏展开为: (a + b)*(a + b);13. 指针
若定义: int a[10], *p; p = a;
则: a + i 是地址
*(a+i)
您可能关注的文档
最近下载
- 部编六年级下册第11课《十六年前的回忆》一等奖教学设计说课稿.docx VIP
- GB_T 39637-2020 金属和合金的腐蚀 土壤环境腐蚀性分类.pdf
- 聚硼硅氮烷合成、掺杂及SiBCN陶瓷应用研究.docx VIP
- 影像技术在麻醉科中的应用.pptx VIP
- 建筑工程图集 15J401:钢梯.pdf VIP
- 电信xx公司计算机系统应急预案演练方案_综合业务支撑系统(IBSS-CRM)_V02.docx VIP
- 尼康NIKON-AF-S 24-70mm f2,8D G维修操作手册.pdf
- 2024年中考物理专项复习:内能、内能的利用.pdf VIP
- 耳内镜微创外科技术PPT幻灯片.pptx VIP
- 肯尼亚市场行业分析.pptx VIP
文档评论(0)