GESP学习考试必读((二)、《专治粗心的10道训练题》)
《专治粗心的10道训练题》 第1关数组下标陷阱1、 题目输入 n 个数求它们的和2、❌ 常见错误代码int sum 0; for(int i 1; i n; i) { sum a[i]; }3、 问题在哪 数组是从0开始 你访问了不存在的 a[n]4、✅ 正确代码int sum 0; for(int i 0; i n; i) { sum a[i]; }5、 本质漏洞 数组范围不准确 第2关最大值初始化1、 题目找出数组最大值2、❌ 错误int maxn; for(int i 0; i n; i) { if(a[i] maxn) maxn a[i]; }3、 问题 maxn 是垃圾值4、✅ 正确int maxn a[0]; for(int i 1; i n; i) { if(a[i] maxn) maxn a[i]; }5、 本质 未设置“初始值” 第3关 和 混乱1、 题目统计等于5的个数2、❌ 错误if(a[i] 5)3、 问题 这是赋值不是判断4、✅ 正确if(a[i] 5)5、 本质 运算符“” 与 “ ” 混淆 第4关循环少一步1、 题目输出1到n2、❌ 错误for(int i 1; i n; i)3、 问题 少输出 n4、✅ 正确for(int i 1; i n; i)5、 本质 边界不清晰“” 与“ ” 未掌握。 第5关忘记清零1、 题目统计偶数个数2、❌ 错误int cnt; for(int i 0; i n; i) { if(a[i] % 2 0) cnt; }3、 问题 cnt 没初始化4、✅ 正确int cnt 0;5、 本质 变量生命周期缺乏计数器每次重新开始使用都需要清零。 第6关字符串长度误判1、 题目输出字符串长度2、❌ 错误for(int i 0; s[i] ! \0; i) len;但没初始化 len3、✅ 正确int len 0; for(int i 0; s[i] ! \0; i) len;4、 本质 忘记初始化 第7关数组越界最危险1、 题目访问最后一个元素2、❌ 错误cout a[n];3、 问题 最后一个是 a[n-1]4、✅ 正确cout a[n-1];5、 本质 下标范围不清 第8关if少大括号1、 题目如果是偶数就计数并输出2、❌ 错误if(a[i] % 2 0) cnt; cout a[i];3、 问题 只有一行属于 if4、✅ 正确if(a[i] % 2 0) { cnt; cout a[i]; }5、 本质 语法结构要养成提前加大括号的习惯。 第9关死循环陷阱1、 题目输出1到n2、❌ 错误int i 1; while(i n) { cout i; }3、 问题 i 没变4、✅ 正确int i 1; while(i n) { cout i; i; }5、 本质 循环三要素要完整 第10关输入输出顺序1、 题目输入两个数输出和2、❌ 错误int a, b; cout a b; cin a b;3、 问题 顺序错误4、✅ 正确int a, b; cin a b; cout a b;5 本质 程序执行顺序不清要画流程图 总结口诀数组从0要记牢 变量初始化不能少 判断必须用双等号 循环边界想周到 大括号别乱跑 顺序执行最重要
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2560591.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!