您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 江苏计算机二级上机注意
摘要:江苏计算机二级(VC++)上机考试历来被认为是学生通过等级考试的一大难点,总结多年教学的经验,针对历届上机考题进行了分析,分别对其改错题和编程题给出了相应的策略。关键词:江苏计算机二级(VC++);上机考试分析与策略江苏计算机二级(VC++)上机考试,主要是针对程序改错和类的编程进行考核,程序改错考核的是学生对程序的理解和调试能力;而类的编程主要是考核学生对面向对象的编程能力。而这两类题的解答在笔者看来,都有很多可以应对的技巧和策略,可分别对其分析后,进行归纳总结。1.2.3数组定义一维数组时数组长度要求为正整型常量,定义二维数组时列数不能省略。数组中元素下标是否超界,是数组元素使用时经常忽略的问题,在编译时也并不对数组元素下标超界作语法检查,但在运行时会报错。如:inta[5]={1,2,3,4,5},i;for(i=0;i=5;i++)cout上面数组元素下标超界,5个长度的数组没有元素a[5]。1.2.4函数函数的原型声明是否与函数的定义对应。函数的定义如有返回值,函数定义是否有正确的返回类型,返回的是否为正确的结果表达式。函数如没有返回值,返回类型是否为void。函数调用与函数定义是否对应,函数调用的实参与函数定义的形参进行参数传递时是否匹配。1.2.5流程结构程序的流程控制中注意区分if语句与while语句及for语句,if语句只作一次选择判断,而while语句及for语句是做循环判断,如果判断为非0即真,执行循环体,一直到循环判断为0,才退出循环。另外要区别循环体中continue与break,continue是结束本次循环,而break是退出所在的循环。1.2.6判断表达式要关注选择或循环的判断表达式是否正确。判断表达式中要注意区分赋值号(=)与关系相等运算符(==)是否混淆;逻辑判断表达式中,==与!=是否混淆,!运算是加还是不加,&&与||是否混淆。1.2.7指针指针就是地址,包括常量地址和指针变量。常量地址主要是指数组名。数组名是常量地址不能被重新赋值或做自加运算。一维数组名是数组第0个元素的地址。而二维数组名表示的是第0行的行地址。指针变量包括指向数据类型变量的指针变量和行指针变量。指向数据类型变量的指针变量,是否用同类型的变量或元素的地址赋值,在其前加*表示指针指向的变量或元素。另外要区分指针变量还是指针指向变量的自加与自减。如*p++和(*p)++的区别,前者是指针变量作后置++,后者是指针变量指向的变量作后置++。行指针变量,是否用相同列数的行地址赋值,行指针前加*表示同行第0列元素的地址,元素地址前加*表示元素。反过去的转换加&运算符。当函数返回类型是指针时,要求认清返回的是否为正确的地址。1.2.8逻辑错误逻辑错误,在编译时不能被发现,在运行时可能运行不出)1改错题一般程序的错误分为两种,一种是语法错误,程序一开始编译时就能发现,也比较容易改正;另一种是逻辑错误,编译时不会报错,但在运行时,可能运行不出来,或运行不出正确结果,这时可以由运行的结果,倒退回去找错,看为什么会出现上述结果,推算出错误之处予以改正。1.1改错题解题步骤改错题首先要读题干,读懂下面程序要实现什么功能。接下来读程序,先别急着改错,尽量弄懂程序如何实现上述功能,各程序段分别做了哪些操作,来实现以上功能。接下来才开始改程序,看每个程序语句对完成上述功能所要完成的任务,如果没有看懂的要再联系上下程序段看,如果没有做到所要完成的任务,再看应该怎么改,改完整个程序后可以编译和运行,也可以边改边编译或运行。1.2常见错误要点分析1.2.1预编译命令(1)包含库函数相应的头文件,如果包含的头文件写错,这时程序中头文件所在的相应库函数不能被识别而报错。如:#include//改为#include#include//改为#include(2)宏定义不正确,这时编译出错不是在宏定义,而是在宏代换后的程序行。因为宏定义是预编译处理,在程序编译前中作代换不作语法检查,代换后编译时才作语法检查。如:#definepi3.14;//改为#definepi3.141.2.2变量变量定义是否正确,变量是否有正确的初始值。变量定义的位置决定了变量的作用域。变量只在其作用域有效。变量定义后如要参与运算,变量需要给出正确的初始值。如:ints,a[5]={1,2,3,4,5};for(inti=0;i5;i++)s+=a[i];上面和变量s给出了定义,但没赋初值,无法正确对数组元素进行求和。黄霞(1975-)女,硕士,专业:计算机科学与技术,研作者简介:究方向:软件方法学。149计算机世界网络安全、数据安全的重要信息、密码、资料、文档等等必须妥善存放。外来工作人员的确需要翻阅文档、资料或者查询相关数据的.应由机房相关负责人代为查阅,并只能向其提供与其当前工作内容相关的数据或资料。随着科学技术和信息技术的迅速发展,计算机在现代教育中,为了提升学生的全面综合素质的发展起到了重要的作用。管理维护好计算机网络教室,保障教学用机的正常运转,每个机房管理人员都必须不断的学习和总结实践经验,将先进高效的管理维护方法实践于工作中,才能更好地服务于教学科研工作。[参考文献][1]伍朝阳.浅谈高校机房软件系统的维护[J].牡丹江师范学院学报,2013(1):10-11.[2]黄庆炬,李昌.网络机房教学、管理软件的选择与应用[J].湖北工业大学学报,2006(4):148-151.[3]徐步东,褚衍梅.基于开放式的高校机房管理现状、问题及对策分析[J].中国教育技术装备,2013(2):29,32.(上接第149页)来或运行结果不对。改逻辑错误前一定先看清题目,理解程序要实现什么功能,再看程序,理解程序的算法,即程序是如何实现题目所要实现的功能,再分析每一行代码进行改错。构造函数一般用循环赋值,一维的用一重循环给一维数组成员的元素赋值,二维的用两重循环给二维数组成员的元素赋值。还有一些数组不是直接由构造函数赋值,而是派生生成的,利用成员函数给派生数组元素赋值。输出函数,一维的用一个循环将一维数组成员的元素一行输出,再换行;二维的外行循环体包含内列循环和换行语句,将二维数组成员的元素按行输出。2.2.3数值型指针成员构造函数中一般先用new数值类型[数组长度],返回数组的首地址给指针成员赋值,再用循环给数组元素赋值。指针成员的赋值也可以在成员函数中做。析构函数用[]指针。输出函数利用循环将指针指向的数组元素按行输出。2.2.4字符类型数组成员构造函数用拷贝函数将形参数组的字符串整体拷贝给字符数组成员,输出函数直接输出字符数组名,可以将字符数组成员指向的字符串作整体输出。2.2.5字符类型指针成员构造函数一般是先用newchar[形参指针指向字符串的字符个数+1],定义一个动态字符数组,返回动态字符数组的首地址给字符指针成员,再将形参指向的字符串用拷贝函数拷到字符指针指向的字符数组,析构函数用[]指针,释放指针指向的动态内存空间,输出函数直接输出字符指针成员指向的字符串。2类的编程类的编程主要来源于面向对象的程序设计思想。定义的一个类表示的是某一类事物,包含描述其静态属性的数据成员和动作行为的成员函数。用这个类来具体定义一个特定事物就是对象。这种类的对象,则拥有类所描述的所有静态属性和动作行为。2.1类定义的一般思路(1)类中先定义私有数据成员,再定义公有的成员函数,每一个成员函数用一对{}括起来,整个类用一对花括号括起来加分号结束。(2)类中的成员函数主要包含构造函数,输出成员函数及功能成员函数,功能成员函数需要掌握相应类型的一些常用算法,如:数值求阶乘、数字与数字字符转换、数位分离、求素数、水仙数等,一维数组的选择排序、二分查找法,求最大值最小值等,二维数组的左移和右移、对角线、外围元素等,字符串的遍历、逆序、插入,删除和找子串等。另外对于指针成员,类中还需定义析构函数来释放指针指向的动态空间等。(3)主函数中根据构造函数的形参,准备相应实参,定义类的对象,再通过对象来调用类定义的成员函数,而对象成员函数中所操作的成员就是当前对象的成员。2.2不同类型成员类的编程对于等级考试中类的编程框架,一般比较固定,先定义一个类,在主函数中定义类的对象,并调用对象的成员函数进行类的测试。类的定义中,先写私有的数据成员,再写公有的成员函数。公有成员函数一般包括构造函数,输出函数和一至两个功能成员函数或辅助函数。功能成员函数或辅助函数因不同的题目和算法而不同;而对于构造函数和输出成员函数,则可根据其不同类型的数据成员进行如下归纳。2.2.1数值类型变量成员数据类型成员,是单个变量做数据成员,构造函数中形参直接为变量赋值,但不是所有成员变量都能直接由构造函数赋值,有些成员变量的值需要进行相应运算和操作才能被求值,这时通常会用功能成员函数来实现相应成员变量的赋值。2.2.2数值型数组成员3总结通过归纳计算机二级VC++上机考试改错题的各种类型错误,并对各种类型的数据成员进行类的编程,可以有针对性地作一些相应的练习来加强上机应考的能力,
本文标题:江苏计算机二级上机注意
链接地址:https://www.777doc.com/doc-2281296 .html