应届生求职全攻略

应届生求职招聘论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

只需一步,快速开始

将应届生论坛分享给朋友:
求职攻略 关注应届生: 今日十大 Email订阅:全职订阅  实习订阅
  每日主题推荐: 实习,找工作,写毕业论文心得(2012.05.25) 更多推荐
搜索讨论区: 按拼音查找
查看: 3600|回复: 7

51.com笔试题-----ZZ

[复制链接]

0

主题

0

好友

1万

积分

世界首富

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

在线时间
313 小时
应届生币
26061 枚
最后登录
2010-5-26
阅读权限
60
精华
1100
帖子
6522
发表于 2008-10-2 16:14:43 |显示全部楼层

大题:

 

1. 反转链表

#include <iostream>
using namespace std;
struct LNode
{
    char data;
    LNode * next;
};
LNode * initList()
{
    LNode *head=new LNode;
    LNode *curPtr, *newPtr;
    curPtr=head;
    int i=0;
    char ch='A';
    while(i++<10)
    {
        newPtr=new LNode;
        newPtr->data=ch++;
        curPtr->next=newPtr;
        curPtr=newPtr;
    }
    newPtr->next=NULL;
    return head;
}
 void print(LNode *head)
{
    LNode *ptr=head->next;
    while(ptr != NULL)
    {
        cout << ptr->data << "  ";
        ptr=ptr->next;
    }
    cout << endl;
}
  void reverse(LNode *head)
{
    assert(head != NULL && head->next != NULL);
    LNode *ptr=head->next->next;
    head->next->next=NULL;
     while(ptr != NULL)
    {
        LNode *tmp=ptr->next;
        ptr->next=head->next;
        head->next=ptr;
        ptr=tmp;
    }
}
 int main()
{
    LNode *head=initList();
    print(head);
    cout << "After reverse: " << endl;
    reverse(head);
    print(head);
    system("PAUSE");
    return 0;
}

2. 一个已知递推式的递归程序

 

3. 数据库查询的问题

 

主观题:

1. socket网络编程,写一个Helloworld程序,包括client和server两部分

Berkeley Socket API不记得,而且平时很少做网络编程,所以没法写,直接画了个图,说明用到哪几个函数

出这种题很没水平,谁去死记那些API啊,而且这个题叙述都有个地方错了,真是不知道51.com怎么招这种人来出题目考我们,巨faint!

 

2. 简要介绍leader/follower模式

Design Pattern模式里好像没这个模式吧!

不过提示说和多进程/多线程类似,那我就发挥了,说的和C/S模型下的多线程类似

 

3. 最后一题考C++的继承和多态的

主要是涉及到基类中protected数据成员和派生类中protected数据成员的重名问题:

#include <iostream>
using namespace std;
 class Base
{
protected:
    int int_i;
    double dbl_x;
 public:
    Base()
    {
        int_i=1;
        dbl_x=1.5;
    }
    virtual void foo(int i)
    {
        cout << "Base::i=" << i << endl;
    }
     virtual void foo(double x)
    {
        cout << "Base::x=" << x << endl;
    }
    virtual void foo()
    {
        cout << "Base::int_i=" << int_i << endl;
        cout << "Base::dbl_x=" << dbl_x << endl;
    }
};
 class Derived : public Base
{
protected:
    int int_i;
 public:
    Derived()
    {
        int_i=2;
        dbl_x=2.5;
    }
    virtual void foo(int i)
    {
        cout << "Derived::i=" << i << endl;
    }
    virtual void foo()
    {
        cout << "Derived::int_i=" << int_i << endl;
        cout << "Derived::dbl_x=" << dbl_x << endl;
    }
};
 class Derived2: public Derived
{
protected:
    double dbl_x;
 public:
    Derived2()
    {
        int_i=3;
        dbl_x=3.5;
    }
    virtual void foo(double x)
    {
        cout << "Derived2::x=" << x << endl;
    }
    virtual void foo()
    {
        cout << "Derived2::int_i=" << int_i << endl;
        cout << "Deroved2::dbl_x=" << dbl_x << endl;
    }
};
 int main()
{
    Derived2 d2;
    Derived d;
    Base b, *p;
    p=&d2; p->foo(7); p->foo(7.5); p->foo();
    p=&d;  p->foo(6); p->foo(6.5); p->foo();
    p=&b;  p->foo(5); p->foo(5.5); p->foo();
     system("PAUSE");
    return 0;
}

进一步探讨:

关于这种情况下:到底对象怎样布局呢??

测试程序如下:

#include <iostream>
using namespace std;
 class Base
{
protected:
    int int_i;
    double dbl_x;
 public:
    Base()
    {
        int_i=1;
        dbl_x=1.5;
    }
     virtual void print()
    {
        cout << "Base::int_i=" << int_i << endl;
        cout << "Base::dbl_x=" << dbl_x << endl;
    }
};
 class Derived : public Base
{
protected:
    int int_i;
 public:
    Derived()
    {
        int_i=2;
        dbl_x=2.5;
    }
     virtual void print()
    {
        cout << "Base::int_i=" << Base::int_i << endl;
        cout << "Derived::int_i=" << int_i << endl;
        cout << "Base::dbl_x=" << Base::dbl_x << endl;
        cout << "Derived::dbl_x=" << dbl_x << endl;
    }
};
 class Derived2: public Derived
{
protected:
    double dbl_x;
 public:
    Derived2()
    {
        int_i=3;
        dbl_x=3.5;
    }
     virtual void print()
    {
        cout << "Base::int_i=" << Base::int_i << endl;
        cout << "Derived::int_i=" << Derived::int_i << endl;
        cout << "Derived2::int_i=" << int_i << endl;
        cout << "Base::dbl_x=" << Base::dbl_x << endl;
        cout << "Derived::dbl_x=" << Derived::dbl_x << endl;
        cout << "Derived2::dbl_x=" << dbl_x << endl;
    }
};
 int main()
{
    Derived2 d2;
    Derived d;
    Base b, *p;
    p=&d2;
    p->print();
    p=&d;
    p->print();
    p=&b;
    p->print();
    system("PAUSE");
    return 0;
}
很显然的看到,派生类中的重名成员只不过隐藏(hide)了基类的同名成员,默认情况下是访问派生类中的成员,要访问基类中同名成员必须加上类域符
既然是隐藏,那么在基类子对象中仍然是存在的!要记住,无论怎样继承,C++都需要保证基类子对象的完整性!
这和成员函数同名一样,只不过成员函数同名时要分清hide和override!

 

 

[ 本帖最后由 candygreen 于 2008-10-2 16:26 编辑 ]


0

主题

0

好友

258

积分

中层管理

Rank: 4

在线时间
31 小时
应届生币
311 枚
最后登录
2009-3-28
阅读权限
15
精华
0
帖子
312
发表于 2008-10-2 16:59:52 |显示全部楼层
应届生求职简历全攻略-推荐
ddddddddddddddddddd
回复

使用道具 举报

0

主题

0

好友

132

积分

项目经理

Rank: 3Rank: 3

在线时间
47 小时
应届生币
145 枚
最后登录
2008-12-12
阅读权限
10
精华
0
帖子
165
发表于 2008-10-2 20:38:46 |显示全部楼层
应届生银行求职全攻略-应聘银行推荐必读
dddddddddddddddddddddddddddddddddddd
努力,奋斗
回复

使用道具 举报

0

主题

0

好友

15

积分

求职中

Rank: 1

在线时间
23 小时
应届生币
11 枚
最后登录
2008-11-29
阅读权限
5
精华
0
帖子
12
发表于 2008-10-3 18:43:52 |显示全部楼层
应届生求职笔试全攻略-推荐
:P 看看,多谢
回复

使用道具 举报

0

主题

0

好友

29

积分

职员

Rank: 2

在线时间
16 小时
应届生币
26 枚
最后登录
2010-11-17
阅读权限
7
精华
0
帖子
47
发表于 2009-2-27 14:03:08 |显示全部楼层
应届生银行求职全攻略-应聘银行推荐必读
谢谢,多看看。。。多谢了
我要加油啊!!!
回复

使用道具 举报

0

主题

0

好友

30

积分

职员

THE VISUAL DESIGN OF HOLYCY

Rank: 2

在线时间
6 小时
应届生币
37 枚
最后登录
2009-11-11
阅读权限
7
精华
0
帖子
29
发表于 2009-10-30 11:27:08 |显示全部楼层
感觉看着有的晕乎。。
有工作,找我哦。我要求不高。
回复

使用道具 举报

0

主题

0

好友

7

积分

求职中

Rank: 1

在线时间
9 小时
应届生币
1 枚
最后登录
2010-1-6
阅读权限
5
精华
0
帖子
23
发表于 2009-10-31 11:12:47 |显示全部楼层
bu cuo
回复

使用道具 举报

3

主题

0

好友

245

积分

项目经理

Rank: 3Rank: 3

在线时间
39 小时
应届生币
346 枚
最后登录
2012-4-3
阅读权限
10
精华
0
帖子
138
发表于 2010-12-26 17:23:48 |显示全部楼层
mark。恩呢
一切都很渺茫
回复

使用道具 举报

还未进行同步设置
您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 /1 下一条

Archiver|应届生求职网YingJieSheng.COM ( 增值电信业务经营许可证沪B2-20070147 )  

GMT+8, 2012-5-26 08:24

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部