[C++基本编程题]本试题仅用于考查C++/C程序员的基本编程技能。 内容限于C++/C常用语法,不涉及数据结构、算法以及深奥的语法。 考试成绩能反映出考生的编程质量以及对C++/C的理解程度, 但不能...+阅读
简答题
1、什么是纯虚函数,什么是抽象类
2、你对stl了解吗?说下vector的是如何访问元素的。
3、构造函数能够设为私有吗?
4、类的静态成员怎么初始化?const和defined的区别?
5、你对MFC了解吗?WM_SIZE消息在创建对话框的时候被响应了几次?
6、你对数据结构了解吗?说说几种排序算法?
7、postmessage和Sendmessage的区别
8、说说对的认识。
9、你对qt了解不?
程序题
char str[20]=hello world;(具体字符串是什么不知道,类似就是)
char *p = str;
int n = 18;
sizeof(str) = ______; sizeof(p) = ______; sizeof(n) = ______; strlen(str) = ______.
Void saas(char str[100])
{
Cout
}
2.简述左 右的优缺点:
For(int k=0; k10; k++)
{
If(condion == TRUE)
Doaa();
Else
Dobb();
K++;
}
If(condion != false)
{
For(int k=0; k10; k++)
{
Doaa();
}
}
Else
{
For(int k=0; k10; k++)
{
Doaa();
}
K++;
}
3.引用传递和值传递的区别,各在什么情况下使用。
4. const有什么用途?(至少说明两种,举例)
5. 判断下面程序的运行结果
void GetMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;
GetMemory(str);
strcpy(str, hello world);
printf(str);
}
:程序崩溃。
因为GetMemory 并不能传递动态内存,Test 函数中的 str 一直都是 NULL。strcpy(str, hello world);将使程序崩溃。
char *GetMemory(void)
{
char p[] = hello world;
return p;
}
void Test(void)
{
char *str = NULL;
str = GetMemory();
printf(str);
}
可能是乱码。因为GetMemory 返回的是指向栈内存的指针,该指针的地址不是 NULL,但其原现的内容已经被清除,新内容不可知。
Void GetMemory2(char **p, int num)
{
*p = (char *)malloc(num);
}
void Test(void)
{
char *str = NULL;
GetMemory(str, 100);
strcpy(str, hello);
printf(str);
}
(1)能够输出hello(2)内存泄漏
void Test(void)
{
char *str = (char *) malloc(100
strcpy(str, hello);
free(str);
if(str != NULL)
{
strcpy(str, world);
printf(str);
}
}
6.输出结果
class baseq
{
public:
virtual Print()
{
coutbase
}
void doprint()
{
Print();
}
};
class ch1:public baseq
{
public:
virtual Print()
{
coutch1
}
};
class ch2:public baseq
{
public:
virtual Print()
{
coutch2
}
};
void Doprint(baseq *bb)
{
bb-doprint();
}
void main()
{
baseq* b=new baseq;
ch1* c1=new ch1;
ch2* c2=new ch2;
Doprint(b);
Doprint(c1);
Doprint(c2);
delete b;
b=c1;
b- Print();
b=c2;
b- Print();
delete c1;
delete c2;
}
7.画图简单说明下进队和出队的过程
8.给出一有头结点的双向链表,要求删除链表的第n个节点,满足的条件是第n个节点的bvalue n*n 并且 intx = n+1.
Struct TNode
{
TNode *preHeader;
TNode *pNextNode;
double bvalue;
int intx;
};
延伸阅读:
C++语言习题(1)下列关于栈的叙述中正确的是 A)在栈中只能插入数据 B)在栈中只能删除数据 C)栈是先进先出的线性表 D)栈是先进后出的线性表 (2)下列数据结构中,插入时不需要移动其他元素...
微软、百度、联想等名企C++笔试题汇总微软十五道笔试题 1、有一个整数数组,请求出两两之差绝对值最小的值,记住,只要得出最小值即可,不需要求出是哪两个数。 2、写一个函数,检查字符是否是整数,如果是,返回其整数值。...
凌阳科技C++程序员笔试题凌阳科技C++程序员笔试题: 1。定义的解释,int *p, int (*p)();等 10分 2。VC6.0 的单步执行的快捷键 5分 3。程序语句补全 5分(记住ascii含义) 4。 5。名词解释,RAM,ROM,堆栈,EEPR...
网易C++笔试题网易C++笔试题1. #i nclude 和#i nclude filename.h 有什么区别? 答:对于#i nclude ,编译器从标准库路径开始搜索filename.h 对于#i nclude filename.h,编译器从用户的工作路径...
2014金山网络C++实习生笔试题大三快结束了,忙着找实习,参加了金山网络实习生校园招聘,3乘5实在是太难了,找实习也是太难了。。。 题目只有四道,全是编程题。 1.用C++代码实现String类,要求:1)构造函数和析构函...
C++经典面试问题C++经典面试问题分享1,关于动态申请内存答:内存分配方式三种:(1)从静态存储区域分配:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。全局变量,static变...
c++工程师面试问题面试时如何选择搭配饰物?领带:求职者不可能戴了一条漂亮的领带而获得一个职位,但是可以肯定的是,如果戴了一条幼稚可笑的领带就会使你失去这个职位。所以,不要小看配饰的作用, 精...
名企招聘C++程序员笔试题名企招聘C++程序员笔试题 单向链表的反转是一个经常被问到的一个面试题,也是一个非常基础的问题。比如一个链表是这样的: 1-2-3-4-5 通过反转后成为5-4-3-2-1。 最容易想到的...
腾讯cc++面试用的笔试题1、请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句 #define Max(a, b) (((a b) + abs(a b)) ? a : b) 2、如何输出源文件的标题和目前执行行的行数 int line...