深圳小码王:我的孩子学习编程,参加信息学竞赛(NOIP)要怎么做
导读:现在越来越多的家长开始让孩子学习编程,编程除了可以极大地提高孩子的逻辑思维能力以外,其相关赛事奖项对升学的重大影响也是编程引起越来越多家长关注的重要原因。
现在越来越多的家长开始让孩子学习编程,编程除了可以极大地提高孩子的逻辑思维能力以外,其相关赛事奖项对升学的重大影响也是编程引起越来越多家长关注的重要原因。
比如,孩子学习编程后,如果参加信息学相关的竞赛(NOIP和NOI)获得优异成绩,很容易得到高校自主招生的面试资格、降分录取甚至免试保送。
因此越来越多的家长都在后台询问“新手如何入门学习准备NOIP比赛”,今天小码王来为大家解答这个问题。
注:全国青少年信息学奥林匹克联赛,National Olympiad in Informatics in Provinces,简称NOIP。

小码王少儿编程整理了一些关于NOIP 的大家普遍关心的一些问题。为方便阅读,下面以问答方式呈现。
1、问:信息学相关的竞赛有哪些?
答:NOIP是全国青少年信息学奥林匹克联赛,主要是是省级比赛。每年的10月初赛,11月复赛,通常都是提前两三年准备。
NOI是全国青少年信息学奥林匹克竞赛,是面向中学生的全国性质的编程最高级别比赛。
IOI是国际信息学奥林匹克竞赛,是面向全世界中学生的一年一度的信息学学科竞赛,每个国家最多可选派4名选手参加。
ACM主要是指ACM-ICPC,即国际大学生程序设计竞赛,包括全球总决赛和各大洲的区域赛。
如果NOIP成绩好,对于入选省队并参加NOI会有一定的帮助。同时,NOIP系列比赛和ACM系列比赛的题型和内容类似,准备NOIP比赛对后续的国家级和国际级大赛也很有帮助。
2、问:那如果想走信息学比赛这条路,是需要先从NOIP比赛开始准备?
答:是的,NOIP是所有中学参赛者首先会接触到的比赛,也是后面比赛的基础。
NOIP自1995年至2017年已举办23次。每年由中国计算机学会统一组织。
联赛分初赛和复赛两个阶段。联赛分普及组和提高组两个组别,难度不同,分别面向初中和高中阶段的学生。
小学、初中可以参加普及组的比赛;
小学、初中、高中都可以参加提高组的比赛。
3、问:很多家长最关心的问题,NOIP的现实好处是什么?
答:NOIP取得好的成绩对参加名校的自主招生有一定的帮助。进入国家集训队的,可以直接保送清华北大。其他获奖选手可通过夏令营、冬令营、科学营、体验营等各种自主招生渠道争取到降20-60分甚至本一线的录取优惠。
据悉,清华大学、北京大学已经和参与2018年信息学冬令营的部分学生签订了包括:无条件降至一本线录取、 有条件降至一本线录取、 有条件降 60 分、30 分等不同档次的降分优惠。
去年年底澎湃新闻报道的15岁的四川男生王思齐高中就凭借优异的全国青少年信息学奥林匹克竞赛成绩获得了清华大学2019年自主招生降到一本线的录取优惠。
除此之外,很多地方,很多在NOIP中获得优异成绩的小学生,对于小升初择校也有很大的帮助(不同区域相关政策不同)。
4、问:几年级开始准备NOIP最好?
答:有的孩子小学就开始学习,或许可在小升初时享受到信息特长生优惠(根据当地政策而定)。
进入初中后,可争取初一拿普及组一等奖,初二开始可直接参加提高组竞赛,或许可在中考升学时享受优惠(根据当地政策而定)。这样高一就可以冲刺提高组一等奖,并且可以冲省队、冲国赛了。
其实,更多的孩子可能是从初一开始,进程和小学开始差不多,参赛也很从容。如果初中毕业才开始,那么节奏可能会有一点紧凑了。
5、问:NOIP学什么?
答:参加NOIP,首先要学的是C++,因为参加比赛时程序都是用C++编写的。这里的C++基本只涉及C语言和STL,而C++特有的类、模板等内容很少涉及。
当然C++只是基础,信息学竞赛的核心是算法和数据结构,需要选手分析问题,并通过算法和数据结构大大提升程序效率,这也是信息学竞赛的魅力所在。
如果是小学开始,一般建议增加一部分:即编程入门,目的是培养孩子学习编程的兴趣和信心,至于学习时间要视孩子的具体情况而定。
6、问:NOIP选择的编程语言那么多,我们为什么要选择学习C++呢?
答:嗯,目前NOIP可以使用C、C++和Pascal三种编程语言,而2022年以后,NOIP比赛C和Pascal语言将不再可用,只剩下C++了。
7、问:0基础的孩子是直接学C++还是先学习其他语言打基础比较好?
答:像我刚才说的,如果是小学开始,一般建议增加一部分:编程入门。
0基础的孩子,如果年龄比较小(8岁以下),一般都先学习Scratch,但是Scratch都是一些图形的拼接,根本接触不到真正的编程语言,一些家长不禁恼火,原来我家的孩子上课都是再拼接图形啊?
更多信息请关注深圳小码王少儿编程公号 可通过ID:szxmw-10