用于测试C++/C程序员的基本编程技能、编程质量以及对C++/C的理解程度的一份考卷试题
本试题仅用于考查C++/C程序员的基本编程技能。内容限于C++/C常用语法,不涉及数据结构、算法以及深奥的语法。考试成绩能反映出考生的编程质量以及对C++/C的理解程度,但不能反映考生的智力和软件开发能力。
笔试时间90分钟。
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
一、请填写BOOL , float, 指针变量 与“零值”比较的 if 语句。(10分)
提示:这里“零值”可以是0, 0.0 , FALSE或者“空指针”。例如 int 变量 n 与“零值”比较的 if 语句为:
if ( n == 0 )
if ( n != 0 )
以此类推。
请写出 BOOL flag 与“零值”比较的 if 语句:
|
请写出 float x 与“零值”比较的 if 语句:
|
请写出 char *p 与“零值”比较的 if 语句:
|
二、以下为Windows NT下的32位C++程序,请计算sizeof的值(10分)
char str[] = “Hello” ;
char *p = str ;
int n = 10;
请计算
sizeof (str ) =
sizeof ( p ) =
sizeof ( n ) =
|
void Func ( char str[100])
{
请计算
sizeof( str ) =
}
|
void *p = malloc( 100 );
请计算
sizeof ( p ) =
|
三、简答题(25分)
1、头文件中的 ifndef/define/endif 干什么用?
2、#include <filename.h> 和 #include “filename.h” 有什么区别?
3、const 有什么用途?(请至少说明两种)
4、在C++ 程序中调用被 C编译器编译后的函数,为什么要加 extern “C”声明?
5、请简述以下两个for循环的优缺点
// 第一个
for (i=0; i<N; i++)
{
if (condition)
DoSomething();
else
DoOtherthing();
}
|
// 第二个
if (condition)
{
for (i=0; i<N; i++)
DoSomething();
}
else
{
for (i=0; i<N; i++)
DoOtherthing();
}
|
优点:
缺点:
|
优点:
缺点:
|
四、有关内存的思考题(20分)
void GetMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;
GetMemory(str);
strcpy(str, "hello world");
printf(str);
}
请问运行Test函数会有什么样的结果?
答:
|
char *GetMemory(void)
{
char p[] = "hello world";
return p;
}
void Test(void)
{
char *str = NULL;
str = GetMemory();
printf(str);
}
请问运行Test函数会有什么样的结果?
答:
|
Void GetMemory2(char **p, int num)
{
*p = (char *)malloc(num);
}
void Test(void)
{
char *str = NULL;
GetMemory(&str, 100);
strcpy(str, "hello");
printf(str);
}
请问运行Test函数会有什么样的结果?
答:
|
void Test(void)
{
char *str = (char *) malloc(100);
strcpy(str, “hello”);
free(str);
if(str != NULL)
{
strcpy(str, “world”);
printf(str);
}
}
请问运行Test函数会有什么样的结果?
答:
|
五、编写strcpy函数(10分)
已知strcpy函数的原型是
char *strcpy(char *strDest, const char *strSrc);
其中strDest是目的字符串,strSrc是源字符串。
(1)不调用C++/C的字符串库函数,请编写函数 strcpy
(2)strcpy能把strSrc的内容复制到strDest,为什么还要char * 类型的返回值?
六、编写类String的构造函数、析构函数和赋值函数(25分)
已知类String的原型为:
class String
{
public:
String(const char *str = NULL); // 普通构造函数
String(const String &other); // 拷贝构造函数
~ String(void); // 析构函数
String & operate =(const String &other); // 赋值函数
private:
char *m_data; // 用于保存字符串
};
请编写String的上述4个函数。
分享到:
相关推荐
7. **并发编程**:随着多核处理器的普及,C++11引入了线程库,使得并发编程成为C++程序员必须掌握的一项技能。 #### 具体题目示例与解析 ##### 基础知识类 **问题**:解释C++中的指针与引用的区别。 **解析**:...
考试试卷通常包括选择题、填空题、编程题等多种形式,旨在测试考生对C++语法、数据结构、算法、面向对象编程概念的理解以及实际编程能力。 【描述】:“这是老师给我们做的程序员考试试卷,应该是挺好的,不过我还...
理解并熟练使用STL是C++程序员必备的技能之一,它能帮助编写出高效、可读性强的代码。在面试中,对STL的深入理解不仅可以展示你的技术实力,还能表现出你对编程最佳实践的追求。因此,熟悉STL的各个部分并能够灵活...
总体而言,北京邮电大学《C++程序设计与编程方法》期末考试试卷考察的可能是学生对C++语言核心概念的掌握程度,以及他们应用这些概念解决实际编程问题的能力。因此,以上知识点在准备考试的过程中应当作为复习重点。
【标题】"中兴专业试卷C/C++"指的是中兴通讯公司针对C和C++编程语言的专业考试试题集。这份试卷可能包含了对这两门语言基础知识、语法特性、编程技巧以及实际应用能力的全面考核。 【描述】描述中的重复部分"中兴...
内容概要:本文汇总了2024年第十五届蓝桥杯软件类赛事以及2023年及之前的C/C++竞赛题目,涉及各类题目如‘训练士兵’、‘团建’、‘好数’等不同级别的问题,涵盖了简单的数字运算到复杂的数论、图形操作等方面的...
【标题】"2008 C++ 试卷B.zip" 提供的是2008年度的一份C++考试试卷,这表明它包含了针对C++编程语言的考试问题和可能的答案。C++是一种强大的、面向对象的编程语言,由Bjarne Stroustrup于1983年在C语言的基础上发展...
这是一套专为初级程序员设计的模拟试题,旨在帮助初学者巩固和测试他们在编程基础知识、算法理解、数据结构掌握以及编程实践方面的能力。试题涵盖的内容广泛,包括但不限于: 1. **编程基础**:这部分考察对基本...
【软考程序员试卷及答案分析】是一份涵盖了2015年至2017年全国计算机技术与软件专业技术资格(水平)考试(简称软考)程序员级别的历年试题和解析资源。软考程序员是针对信息技术领域初级技术人员的一项国家资格认证...
内容包括选择题、判断题和编程题,旨在测试考生对C++语法、数据类型、变量、运算符、表达式、控制结构等基础知识的理解,以及运用编程解决实际问题的能力。具体题型涉及到存储设备的磁场干扰情况、IPv4地址表示、...
中,只有一份文件"2007年上半年 程序员 上午试卷 及 答案",这意味着这个压缩包可能包含了一份完整的试卷PDF或Word文档,其中包括了当年考试的所有选择题、填空题、简答题等题目,以及对应的解答。考生可以通过这份...
标题中的“山东大学计算机学院高级语言程序设计(C++)期末试题一套”表明这是一份与C++编程语言相关的教学资料,特别适用于学习或复习C++的高级概念和编程技巧。这份资料可能包含了多项选择题、填空题、简答题以及...
吉林大学作为国内知名的高等学府,其计算机科学教育在业内享有盛誉,因此,其C++课程的考卷反映了业界对C++程序员的知识和技能要求。 这些考卷主要涵盖以下几个核心知识点: 1. **基础语法**:包括变量声明、数据...
描述中的"2007年下半年程序员试题"与标题完全一致,暗示这份资料可能包含了一套完整的试卷或者一系列相关题目,用于测试和衡量程序员在那个时期的专业能力。这个时期的试题可以反映出当时的编程趋势和技术热点,例如...
了解STL的使用是C++程序员的基本技能。 6. **指针和引用**:C++的指针和引用都是对内存地址的间接访问方式,但引用是不可改变的。考生应熟练掌握指针的动态内存管理,以及引用在函数参数传递和对象间关联中的应用。...
【标题】"2007年5月程序员试题标准答案.rar"揭示了这是一份针对2007年中国软件技术资格考试(软考)程序员级别的试题及官方标准答案的资料集合。软考是中国计算机技术与软件专业技术资格(水平)考试,旨在测试考生...
两道编程题涵盖了数列生成与字符排序的实际应用场景,旨在综合评估学生对C++编程能力和逻辑思维的掌握程度。 适用人群:计划参加C++四级考试的学生;对C++中级知识感兴趣的程序员;准备技术面试,需要系统复习C++...
"2005年下半年程序员级试题及答案"所涵盖的知识点主要涉及当年的程序员资格考试,这个考试是针对计算机编程领域的初级专业人员,旨在测试他们在编程基础、算法设计、数据结构、软件工程等方面的基本知识和技能。...
理解栈与堆的区别,正确使用new和delete,以及避免野指针,是每个C++程序员必须掌握的基本技能。 异常处理是C++中处理运行时错误的方式,通过try、catch和throw语句,可以在出现问题时进行适当的恢复或记录,以提高...
【标题】"华为C++笔试题及答案"涵盖了华为公司在招聘过程中对C++编程技能的考核要点,这类题目通常用于评估应聘者的基础编程能力、问题解决能力和对C++特性的理解程度。C++是一种强大的、面向对象的编程语言,广泛...