猎豹移动(金山网络)2015校园招聘(c++project师)
1.已知类MyString的原型为:
class MyString
{
public: MyString(const char *str=NULL);//普通构造函数
MyString(const MyString);//拷贝构造函数
~MyString(void);//析构函数
MyString&operator=(const MyString);//赋值构造函数
private:char *m_c_data;//用于保存字符串
};请编写MyString的上述4个函数。
程序猿面试宝典p112
class MyString
{
public:
MyString(const char *str=NULL);//普通构造函数
MyString(const MyString &other);//拷贝构造函数
~MyString(void);//析构函数
MyString&operator=(const MyString &other);//赋值构造函数
private:
char *m_data;//用于保存字符串
}; MyString::MyString(const char *str)//构造函数
{
if(str==NULL)
{
m_data=new char[1];
*m_data='\0';
}
else
{
int length=strlen(str);
m_data=new char[length+1];
strcpy(m_data,str);
}
} MyString::~MyString(void)//析构函数
{
delete [] m_data;//因为m_data是内部数据类型,也能够写出delete m_data;
} MyString::MyString(const MyString &other)//拷贝构造函数
{
int length=strlen(other.m_data);
m_data=new char[length+1];
strcpy(m_data,other.m_data);
} MyString&MyString::operator=(const MyString &other)//赋值函数
{
if(this==&other)//检查自赋值
return *this;
delete [] m_data;//释放原有的内存资源
int length=strlen(other.m_data);//分配新的内存资源,并复制内容
m_data=new char[length+1];
strcpy(m_data,other.m_data);
return *this;//返回本对象的引用
}
2.请将两个数据序列合并成一个有序并无同样元素的数据。
如s1[5]={23,14,62,57,24},s2[5]={14,19,10,14,25}
运行后输出10,14,19,23,24,25,57,62
注:不能够使用库函数
#include<iostream>
using namespace std;
int main()
{
int s1[5]={23,14,62,57,24},s2[5]={14,19,10,14,25};
int s3[10],i,j,k,t;int flag;
s3[0]=s1[0];
k=1;
for(i=1;i<5;i++)
{
flag=1;
for(j=0;j<k;j++)
{
if(s1[i]==s3[j])
{
flag=0;break;
}
}
if(flag==1)
s3[k++]=s1[i];
}
for(i=0;i<5;i++)
{
flag=1;
for(j=0;j<k;j++)
{
if(s2[i]==s3[j])
{
flag=0;break;
}
}
if(flag==1)
s3[k++]=s2[i];
}
for(i=0;i<k-1;i++)
{
for(j=0;j<k-1-i;j++)
{
if(s3[j]>s3[j+1])
{
t=s3[j];s3[j]=s3[j+1];s3[j+1]=t;
}
}
}
for(i=0;i<k;i++)
{
cout<<s3[i]<<" ";
}
return 0;
}
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveG1oMTk1NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
3.打印一个N*N的方阵。N为每边字符的个数(3<N<20),要求最外层为“A”,第二层为“B”。从第三层起每层依次打印数字0,1,2,3,……样例:当N=5。打印出以下的图形
AAAAA
ABBBA
AB0BA
ABBBA
AAAAA
#include<cstring>
#include<iostream>
using namespace std;
int main()
{
int N;
int i,j,k,m;char a[20][20];
cin>>N;
for(i=0;i<(N+1)/2;i++)
{
if(i==0)
{
for(j=0;j<N;j++)
a[j][i]=a[i][j]=a[j][N-i-1]=a[N-i-1][j]='A';
}
else if(i==1)
{
for(j=1;j<N-i;j++)
a[j][i]=a[i][j]=a[N-i-1][j]=a[j][N-i-1]='B';
}
else
{
for(j=i;j<N-i;j++)
a[j][i]=a[i][j]=a[N-i-1][j]=a[j][N-i-1]=i-2+'0';
}
}
for(i=0;i<N;i++)
{
for(j=0;j<N;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveG1oMTk1NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
纸上敲代码。都没写对~有的时候真是快崩溃,找不到工作的忧伤~谁能懂
猎豹移动(金山网络)2015校园招聘(c++project师)的更多相关文章
- 阿里巴巴集团2014年校园招聘系统project师北京笔试题
第一部分 单选题(前10题,每题2分;后10题,每题3分;共50分.选对得满分,选错倒扣一分,不选得0分.) 1.字符串"alibaba"有 个不同的排列. A. 5040 B. ...
- 2015-8-29阿里校园招聘研发project师笔试题
前言:原题来自于网络:http://www.cnblogs.com/nausicaa/p/3946694.html.本人依据自己理解对题目进行解答.因为水平有限.题目有不会做.做错的地方.欢迎大家留言 ...
- 百度2015校园招聘自然语言处理project师面试
面了一个多小时,大致回想下 1. 介绍一下简历上的项目 这个讲了好长时间,由于我做的是生物信息,面试官听得不太明确. 2. 一个城市每对夫妇都要生到一个男孩才停止生育,问终于该城市的男女比例 1:1, ...
- 百度2015校园招聘面试题回忆录(成功拿到offer)
引言 盼望着,盼望着……今年终于轮到我找工作了,还深深记得去年跟在师兄后面各种打酱油的经历,当时觉得找工作好难啊,怎么面一个败一个,以后还能找到工作不? 不过当时的失败也是理所当然的,那时候没有做任何 ...
- 校招:Vobile阜博通2015校园招聘
关于Vobile阜博通校招(10-11月份),耗时将近一个月,现整理分享给大家. 1 浙大笔试无选择填空,问答题为主,偏语言的个人理解,不在意具体语言方向(C/C++/Java).(1)描述C.C++ ...
- 完美世界-2015校园招聘-java服务器工程师-成都站
给定一个整数,将该整数分解成多个2的幂次方相加的形式,每次都取最大的可以分解出来的2的幂次方 比如 65 64 1 1 1 2 2 package wanmanshijie; import java. ...
- 搜狗2015校园招聘javaproject师面经
面试时看到了我的笔试题.真是慘不忍睹啊. . 1. 问回去有没有研究一下笔试题 木有,果断后面悲剧了 2. 解释一下笔试的一道选择题: 下列哪种操作可能带来死锁? A: lock(m1) lock(m ...
- 校园招聘 - 比較easy的面试题
又到校园招聘的季节了, 自从和一些同事出版了<编程之美>一书之后, 我常常收到一些关于面试, 编程, 和"题库"的询问. 事实上我自己对算法没有什么研究, 有些问题都 ...
- java笔试题(金山网络)
今天参加金山的校园招聘,java笔试,回来仔细研究实现一下: 题目1:工厂两条生产线,三个工人,生产线上可以最多存放m个产品,当生产线满时,机器停止生产,等产品线不满时才继续生产,每条产线上一次只能允 ...
随机推荐
- Action的返回值类型总结
Action的返回值 MVC 中的 ActionResult是其他所有Action返回类型的基类,下面是我总结的返回类型,以相应的帮助方法: 下面是这些方法使用的更详细的例子 一.返回View ...
- 技术不牛如何才拿到国内IT巨头的Offer(转)
不久前,byvoid面阿里星计划的面试结果截图泄漏,引起无数IT屌丝的羡慕敬仰.看看这些牛人,NOI金牌,开源社区名人,三年级开始写Basic...在跪拜之余我们不禁要想,和这些牛人比,作为绝大部分技 ...
- BZOJ 3314: [Usaco2013 Nov]Crowded Cows( 单调队列 )
从左到右扫一遍, 维护一个单调不递减队列. 然后再从右往左重复一遍然后就可以统计答案了. ------------------------------------------------------- ...
- ean128与code128 条形码 算法分析
[code128条形码组成] 除终止符(STOP)由13个模块组成外,其他字符均由11个模块组成 就是说,如果用‘1’表示黑线(实模块),用‘0’表示白线(空模块),那么每表示一个字符就需要11条线, ...
- 文本框、文本编辑框、按钮——axure线框图部件库介绍
1. 与文本面板组合设计表单 文本框主要是在设计页面表单的时候,用的最多,通过与文本面板的组合使用,下面我们通过文本面板和文本框设计了一个简单的注册表单 对于,文本框中的文字,只需要双击即可编辑文字 ...
- Linux下select函数的使用
一.Select 函数详细介绍 Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect. accept.recv ...
- 【Ubuntu】升到14,攻克了进入用户后没有菜单条导航栏的问题
控制台还能够进,用ctrl+alt+f1用老账号登录,用sudo adduser test新建立一个名字叫test的帐号 然后就能够进去了,可能是配置文件坏掉了
- JS - 图片放大器
下载地址:http://www.lanrentuku.com/js/tupian-1170.html
- 【ASP.NET Web API教程】2.3.7 创建首页
原文:[ASP.NET Web API教程]2.3.7 创建首页 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容. Part 7: Crea ...
- (step6.3.3)hdu 1150(Machine Schedule——二分图的最小点覆盖数)
题目大意:第一行输入3个整数n,m,k.分别表示女生数(A机器数),男生数(B机器数),以及它们之间可能的组合(任务数). 在接下来的k行中,每行有3个整数c,a,b.表示任务c可以有机器A的a状态或 ...