一套带答案的C++笔试题


Posted in 面试题 onJanuary 10, 2014
188、以下三条输出语句分别输出什么?【基础】
char str1[] = “abc”;
char str2[] = “abc”;
const char str3[] = “abc”;
const char str4[] = “abc”;
const char* str5 = “abc”;
const char* str6 = “abc”;
第53 页共59 页
cout cout cout 答:输出为:false、false、true。
189、以下反向遍历array 数组的方法有什么错误?【基础】
vector array;
array.push_back(1);
array.push_back(2);
array.push_back(3);
//反向遍历array 数组:
for(vector::size_type i=array.size()-1; i>=0; –i){
cout }
答:for 循环中的变量i 的类型不应定义为vector::size_type,
因为该类型为无符号数值类型,故循环条件将恒成立,为死循环,应将其类型定
义为有符号的int 类型。
190、以下代码有什么问题?【基础】
cout 答:运算符中两个可选值的类型不同。
191、以下代码有什么问题?【基础】
typedef vector IntArray;
IntArray array;
array.push_back(1);
array.push_back(2);
array.push_back(2);
array.push_back(3);
//删除array 数组中所有的2
for(IntArray::iterator itor=array.begin(); itor!=array.end();
++itor){
if(2==*itor) {
array.erase(itor);
}
}
答:for 循环中的if 语句后的array.erase(itor)语句,它将迭代器itor 所指
向的元素删除后会自动下移一位,故应在其后加上语句:itor–;
192、以下代码中的两个sizeof 用法有问题吗?【基础】
void upperCase(char str[]){ //将str 中的小写字母转换成大写字母
for(int i=0; i if(‘a’ str[i] -= (‘a’-A’);
}
第54 页共59 页
}
int main(){
char str[] = “aBcDe”;
cout cout upperCase(str);
cout return 0;
}
答:在upperCase 方法中,for 循环的sizeof(str)的值将总是4,所以该方法
只能将参数中的字符串的前四个字符转换成大写字母。
193、以下代码能够编译通过吗?为什么?【基础】
unsigned int const size1 = 2;
char str1[size1];
unsigned int temp = 0;
cin >> temp;
unsigned int const size2 = temp;
char str2[size2];
答:能;
194、以下代码有什么问题?【基础】
struct Test{
Test(int){}
Test(){}
void fun(){}
};
void main(void){
Test a(1);
a.fun();
Test b();
b.fun();
}
答:main 函数的返回类型应为int;不能对b 调用fun()方法。
195、以下代码中的输出语句输出0 吗?为什么?【基础】
struct CLS{
int m_i;
CLS(int i):m_i(i){ }
CLS(){ CLS(0);}
};
int main(){
CLS obj;
cout 第55 页共59 页
}
答:输出不是0;
196、C++中的空类,默认产生哪些类成员函数?【基础】
答:空类中默认包含的成员函数如下:
class Empty{
public:
Empty(); //缺省构造函数
Empty( const Empty& ); //拷贝构造函数
~Empty(); //析构函数
Empty& operator=( const Empty& ); //赋值运算符
Empty* operator&(); //取址运算符
const Empty* operator&() const; //取址运算符const
};
197、统计一篇文章中单词个数。【基础】
答:代码如下:
include
#include
using namespace std;
int main(){
ifstream fin(“t.txt”);
if(!fin){
cout return -1;
}
int count = 0;
char buf[256];
memset(buf, 0, 256);
while(1){
fin2>>buf;
if(fin2.eof())
break;
count++;
}
cout fin2.close();
return 0;
}
198、写一个函数,完成内存之间的拷贝。【中等难度】
答:代码如下:
void* mymemcpy(void* dest, const void* src, size_t count){
char* pdest = static_cast(dest);
const char* psrc = static_cast(src);
第56 页共59 页
if(pdest>psrc && pdest for(size_t i=count-1; i!=-1; –i){
pdest[i] = psrc[i];
}
}else{
for(size_t i=0; i pdest[i] = psrc[i];
}
}
return dest;
}
int main(){
char str[] = “0123456789″;
mymemcpy(str+1, str+0, 9);
cout return 0;
}
199、非C++内建类型A 和B,在哪几种情况下B 能隐式转化为A?【较难】
答:a)class B : public A{……}//B 公有继承自A,可以是间接继承的
b)class B{operator A();}//B 实现了隐式转化为A 的转化
c)class A{ A(const B&);}//A 实现了non-explicit 的参数为B 构造函数
(可以有其他带带默认值的参数)
d)A& operator= (const A&);//赋值操作,虽不是正宗的隐式类型转换,
但也可以勉强算一个
200、以下代码有什么问题?【较难】
void char2Hex(char c){ //将字符以16 进制显示
char ch = c/0×10 + ’0′;
if(ch>’9′) ch += (‘A’-’9′-1);
char cl = c%0×10 + ’0′;
if(cl>’9′) cl += (‘A’-’9′-1);
cout }
int main(){
char str[] = “I love 中国”;
for(size_t i=0; i char2Hex(str[i]);
cout return 0;
}
答:
201、以下两条输出语句分别输出什么?【较难】
float a = 1.0f;
第57 页共59 页
cout cout cout float b = 0.0f;
cout cout cout 答:第一处输出false,第二处输出true。

Tags in this post...

面试题 相关文章推荐
PHP经典面试题
Sep 03 面试题
Yahoo-PHP面试题2
Dec 06 面试题
面向对象编程的优势是什么
Dec 17 面试题
Java里面如何创建一个内部类的实例
Jan 19 面试题
C有"按引用传递"吗
Sep 06 面试题
在什么时候需要使用"常引用"
Dec 31 面试题
广州地球村科技数据库题目
Apr 25 面试题
介绍一下内联、左联、右联
Dec 31 面试题
What is view? why do we have view?
Jun 22 面试题
使用索引(Index)有哪些需要考虑的因素
Oct 19 面试题
亿阳信通股份有限公司笔试题(C#)
Mar 04 面试题
解释下面关于J2EE的名词
Nov 15 面试题
写一个方法1000的阶乘
Nov 21 #面试题
一套VC试题
Jan 23 #面试题
C语言50道问题
Oct 23 #面试题
普天C++笔试题
Mar 20 #面试题
华美博弈C/VC工程师笔试试题
Jul 16 #面试题
联想C++笔试题
Jun 13 #面试题
C语言面试题
Oct 30 #面试题
You might like
通过PHP的内置函数,通过DES算法对数据加密和解密
2012/06/21 PHP
使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)
2014/05/05 PHP
通过php删除xml文档内容的方法
2015/01/23 PHP
php实现阿拉伯数字和罗马数字相互转换的方法
2015/04/17 PHP
在Laravel中使用MongoDB的方法示例
2019/11/11 PHP
jQuery选择没有colspan属性的td的代码
2010/07/06 Javascript
JQuery插件开发示例代码
2013/11/06 Javascript
Jqgrid设置全选(选择)及获取选择行的值示例代码
2013/12/28 Javascript
文本框文本自动补全效果示例分享
2014/01/19 Javascript
Javascript 拖拽雏形(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
jquery实现树形菜单完整代码
2015/12/29 Javascript
Javascript中的数组常用方法解析
2016/06/17 Javascript
ES6中的数组扩展方法
2016/08/26 Javascript
新手快速入门JavaScript装饰者模式与AOP
2019/06/24 Javascript
python使用百度翻译进行中翻英示例
2014/04/14 Python
让Python代码更快运行的5种方法
2015/06/21 Python
python链接oracle数据库以及数据库的增删改查实例
2018/01/30 Python
Pycharm远程调试原理及具体配置详解
2019/08/08 Python
python+selenium 鼠标事件操作方法
2019/08/24 Python
python调用c++返回带成员指针的类指针实例
2019/12/12 Python
使用Python+selenium实现第一个自动化测试脚本
2020/03/17 Python
使用Python3 poplib模块删除服务器多天前的邮件实现代码
2020/04/24 Python
高考考python编程是真的吗
2020/07/20 Python
H5 canvas实现贪吃蛇小游戏
2017/07/28 HTML / CSS
h5页面唤起app如果没安装就跳转下载(iOS和Android)
2020/06/03 HTML / CSS
欧迪办公美国官网:Office Depot
2016/08/22 全球购物
温泉秘密:Onsen Secret
2020/07/06 全球购物
事业单位鉴定材料
2014/05/25 职场文书
民政局副局长民主生活会个人对照检查材料
2014/09/19 职场文书
社区党建工作汇报材料
2014/10/27 职场文书
学校党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
清洁工个人总结
2015/03/04 职场文书
财务总监岗位职责范本
2015/04/03 职场文书
党员个人承诺书
2015/04/27 职场文书
解决Golang中goroutine执行速度的问题
2021/05/02 Golang
PC版《死亡搁浅导剪版》现已发售 展开全新的探险
2022/04/03 其他游戏