南昌大学C++程序设计期末考试试卷

需积分: 0 0 下载量 41 浏览量 更新于2024-09-16 收藏 95KB DOC 举报
"C++程序设计考试题" 这篇资源是南昌大学2008~2009学年第二学期期末考试的一份C++程序设计试卷,试卷编号为(B)卷。试卷结构包括选择题、填空题、简答题等多种题型,总分为100分。考生需要注意试卷完整性,考试结束后不得携带试卷离开考场。 1. C++标识符:标识符是C++中变量、函数等的名称。题目中提到,选项A)_123,B)foo~bar,C)case,D)3var,其中,A)_123是合法的C++标识符,因为C++允许下划线开头的标识符;B)foo~bar中的波浪线(~)不是合法字符;C)case是C++的关键字,不能作为标识符;D)3var以数字开头,不符合C++的标识符规则。 2. 字符串占用空间:在C++中,字符串是以null字符'\0'结尾的字符数组。因此,字符串"student"实际占用8个字节,包括's', 't', 'u', 'd', 'e', 'n', 't'和'\0'。 3. 二维数组元素访问:题目中给出的二维数组inta[][3]={{1},{3,2},{4,5,6},{0}},a[2][2]表示第三行第三列的元素,其值为6。 4. 类的成员修饰关键字:在类中声明成员时,可以使用private关键字使成员成为私有,不允许在类外部直接访问。其他选项中,B) extern用于声明全局变量,C) auto和D) register是C++中变量声明的存储类别,与类成员修饰无关。 5. 指针运算:C++中的指针可以进行关系运算(如比较),可以为空(NULL),并且在一定条件下可以相互赋值。但是,两个指针相加通常只在指针指向数组元素时有意义,表示偏移量,题目中没有提供具体条件,所以B选项可能是错误的描述。 6. 函数参数默认值:C++允许函数参数设置默认值,但默认值的设定可以不连续,即某些参数可以没有默认值,后面的参数可以有默认值。因此,B选项是正确的描述。 7. 构造函数:ABx;这样的语句会创建一个AB类的对象x,此时会自动调用类的无参构造函数(B选项)。如果类没有定义任何构造函数,编译器会自动生成一个无参构造函数。 8. 开关语句(switch语句):开关语句允许根据不同的条件执行不同的代码块。A选项是正确的,因为default子句是可选的,可以出现一次或不出现。 这份试卷主要考察了C++的基础知识,包括标识符规则、内存管理、数组和字符串、类和对象、指针操作、函数参数以及控制流结构等核心概念。考生需要具备扎实的C++语法基础和理解能力来解答这些问题。