• 2011淘宝技术类校园招聘之笔试题解析


    题目来源自:http://apps.hi.baidu.com/share/detail/31359085

    笔试一共四个大题,一、二、四必做,三根据申请职位不同选作,一个小时的时间

    一,选择:

    1. 下列关于模块功能独立性,模块内聚与耦合,关于内聚的是:

    a)信息隐蔽         b)模块功能强度         c)      d)记不清楚了

    2. 下列哪个Http的返回编码不正确

    考了403 500 501 502(正确意思分别是禁止访问、内部服务器错、未实现、网关错误)

    3. Struct st{char* a,short b,char c[5],int d};

    St xx[3];

    Char* p=(char*)&(xx[2].c[4]);

    Printf(“%d”,p-xx);

    打印结果是():

    a)62   b)  42   c) 32  d) 52    

     4. (¬A ∨B)∧(C∨D )的逆波兰式是:

     5. 想不起来了……

    二,填空:

    1. Linux系统中改变文件所有者的命令是:

    2. 进程的三种状态是:

    3. 按区域分三种网络是:

    4. 一个8位数,它的补码有3个1,5个0,那么补码形式最小是:

    5. Int countx=0;

    Int x=17373;

    Void f(){

    While(x)

    {

               countx ++;

               X=x&(x-1);

    }

    Return countx;

    }

    问返回值是:

     四,编程:

    假设骰子有1~6个点,掷十次,总和为50,问有多少种方法。编写递归算法实现。

    三,选作题目(记得不全)

    C++部分:

    1. 编程实现n的阶乘,尽量考虑各种异常

    2. 举例说明OOD设计原则,并说明对项目实施有什么好处

    其他题目(有java、前端等等)

    1.给了一个“回到顶部”的小按钮,让javascript 与css实现点击回到本页顶部,这个按钮一直位于当前页面最左下部。

    2.给了四副图片,一个在左边,三张在右边随机叠放,用javascrpt 与css实现右边图片点击放大,出现任意图片可以随机摆放,而且会有重叠

    3.给了一个购物流程,让设计测试用例

    参考资料汇总:

    http常见错误汇总

    "100" : Continue 
    "101" : witching Protocols 
    "200" : OK 
    "201" : Created 
    "202" : Accepted 
    "203" : Non-Authoritative Information 
    "204" : No Content 
    "205" : Reset Content 
    "206" : Partial Content 
    "300" : Multiple Choices 
    "301" : Moved Permanently 
    "302" : Found 
    "303" : See Other 
    "304" : Not Modified 
    "305" : Use Proxy 
    "307" : Temporary Redirect 
    "400" : Bad Request 
    "401" : Unauthorized 
    "402" : Payment Required 
    "403" : Forbidden 
    "404" : Not Found 
    "405" : Method Not Allowed 
    "406" : Not Acceptable 
    "407" : Proxy Authentication Required 
    "408" : Request Time-out 
    "409" : Conflict 
    "410" : Gone 
    "411" : Length Required 
    "412" : Precondition Failed 
    "413" : Request Entity Too Large 
    "414" : Request-URI Too Large 
    "415" : Unsupported Media Type 
    "416" : Requested range not satisfiable 
    "417" : Expectation Failed 
    "500" : Internal Server Error 
    "501" : Not Implemented 
    "502" : Bad Gateway 
    "503" : Service Unavailable 
    "504" : Gateway Time-out 
    "505" : HTTP Version not supported 
    HTTP 400 - 请求无效 
    HTTP 401.1 - 未授权:登录失败 
    HTTP 401.2 - 未授权:服务器配置问题导致登录失败 
    HTTP 401.3 - ACL 禁止访问资源 
    HTTP 401.4 - 未授权:授权被筛选器拒绝 
    HTTP 401.5 - 未授权:ISAPI 或 CGI 授权失败 
    HTTP 403 - 禁止访问 
    HTTP 403 - 对 Internet 服务管理器 (HTML) 的访问仅限于 Localhost 
    HTTP 403.1 禁止访问:禁止可执行访问 
    HTTP 403.2 - 禁止访问:禁止读访问 
    HTTP 403.3 - 禁止访问:禁止写访问 
    HTTP 403.4 - 禁止访问:要求 SSL 
    HTTP 403.5 - 禁止访问:要求 SSL 128 
    HTTP 403.6 - 禁止访问:IP 地址被拒绝 
    HTTP 403.7 - 禁止访问:要求客户证书 
    HTTP 403.8 - 禁止访问:禁止站点访问 
    HTTP 403.9 - 禁止访问:连接的用户过多 
    HTTP 403.10 - 禁止访问:配置无效 
    HTTP 403.11 - 禁止访问:密码更改 
    HTTP 403.12 - 禁止访问:映射器拒绝访问 
    HTTP 403.13 - 禁止访问:客户证书已被吊销 
    HTTP 403.15 - 禁止访问:客户访问许可过多 
    HTTP 403.16 - 禁止访问:客户证书不可信或者无效 
    HTTP 403.17 - 禁止访问:客户证书已经到期或者尚未生效 
    HTTP 404.1 - 无法找到 Web 站点 
    HTTP 404 - 无法找到文件 
    HTTP 405 - 资源被禁止 
    HTTP 406 - 无法接受 
    HTTP 407 - 要求代理身份验证 
    HTTP 410 - 永远不可用 
    HTTP 412 - 先决条件失败 
    HTTP 414 - 请求 - URI 太长 
    HTTP 500 - 内部服务器错误 
    HTTP 500.100 - 内部服务器错误 - ASP 错误 
    HTTP 500-11 服务器关闭 
    HTTP 500-12 应用程序重新启动 
    HTTP 500-13 - 服务器太忙 
    HTTP 500-14 - 应用程序无效 
    HTTP 500-15 - 不允许请求 global.asa 
    Error 501 - 未实现 
    HTTP 502 - 网关错误



    逆波兰式其实就是后缀表达式,其形式进行将运算表达式进行转换,操作数放在操作符前面,比如:

    a+b

    其对应的后缀表达式:a b +

    遵守这个原则,那么下面这个复杂的运算式:(a+b)*(c/d+5)

    对应的逆波兰式:ab+cd/5+*


    其中对应的优先级:

    PrecedenceOperatorDescriptionExampleAssociativity
    1 ()
    []
    ->
    .
    ::
    ++
    --
    Grouping operator
    Array access
    Member access from a pointer
    Member access from an object
    Scoping operator
    Post-increment
    Post-decrement
    (a + b) / 4;
    array[4] = 2;
    ptr->age = 34;
    obj.age = 34;
    Class::age = 2;
    for( i = 0; i < 10; i++ ) ...
    for( i = 10; i > 0; i-- ) ...
    left to right
    2 !
    ~
    ++
    --
    -
    +
    *
    &
    (type)
    sizeof
    Logical negation
    Bitwise complement
    Pre-increment
    Pre-decrement
    Unary minus
    Unary plus
    Dereference
    Address of
    Cast to a given type
    Return size in bytes
    if( !done ) ...
    flags = ~flags;
    for( i = 0; i < 10; ++i ) ...
    for( i = 10; i > 0; --i ) ...
    int i = -1;
    int i = +1;
    data = *ptr;
    address = &obj;
    int i = (int) floatNum;
    int size = sizeof(floatNum);
    right to left
    3 ->*
    .*
    Member pointer selector
    Member pointer selector
    ptr->*var = 24;
    obj.*var = 24;
    left to right
    4 *
    /
    %
    Multiplication
    Division
    Modulus
    int i = 2 * 4;
    float f = 10 / 3;
    int rem = 4 % 3;
    left to right
    5 +
    -
    Addition
    Subtraction
    int i = 2 + 3;
    int i = 5 - 1;
    left to right
    6 <<
    >>
    Bitwise shift left
    Bitwise shift right
    int flags = 33 << 1;
    int flags = 33 >> 1;
    left to right
    7 <
    <=
    >
    >=
    Comparison less-than
    Comparison less-than-or-equal-to
    Comparison greater-than
    Comparison geater-than-or-equal-to
    if( i < 42 ) ...
    if( i <= 42 ) ...
    if( i > 42 ) ...
    if( i >= 42 ) ...
    left to right
    8 ==
    !=
    Comparison equal-to
    Comparison not-equal-to
    if( i == 42 ) ...
    if( i != 42 ) ...
    left to right
    9 & Bitwise AND flags = flags & 42; left to right
    10 ^ Bitwise exclusive OR flags = flags ^ 42; left to right
    11 | Bitwise inclusive (normal) OR flags = flags | 42; left to right
    12 && Logical AND if( conditionA && conditionB ) ... left to right
    13 || Logical OR if( conditionA || conditionB ) ... left to right
    14 ? : Ternary conditional (if-then-else) int i = (a > b) ? a : b; right to left
    15 =
    +=
    -=
    *=
    /=
    %=
    &=
    ^=
    |=
    <<=
    >>=
    Assignment operator
    Increment and assign
    Decrement and assign
    Multiply and assign
    Divide and assign
    Modulo and assign
    Bitwise AND and assign
    Bitwise exclusive OR and assign
    Bitwise inclusive (normal) OR and assign
    Bitwise shift left and assign
    Bitwise shift right and assign
    int a = b;
    a += 3;
    b -= 4;
    a *= 5;
    a /= 2;
    a %= 3;
    flags &= new_flags;
    flags ^= new_flags;
    flags |= new_flags;
    flags <<= 2;
    flags >>= 2;
    right to left
    16 , Sequential evaluation operator for( i = 0, j = 0; i < 10; i++, j++ ) ... left to right


    Linux下常用命令可以从我这里下载,我之前从网上搜集过一个比较全的版本:

    /Files/weisteve/Linux常用命令全集.rar 

    进程的三个状态:就绪 执行 阻塞

    三个状态的关系:

     (1) 就绪->执行

    处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态转变成执行状态。
     (2) 执行->就绪
    处于执行状态的进程在其执行过程中,因分配给它的一个时间片已用完而不得不让出处理机,于是进程从执行状态转变成就绪状态。
     (3) 执行->阻塞
    正在执行的进程因等待某种事件发生而无法继续执行时,便从执行状态变成阻塞状态。
     (4) 阻塞->就绪
    处于阻塞状态的进程,若其等待的事件已经发生,于是进程由阻塞状态转变为就绪状态。

     网络按覆盖范围分为:

    局域网 城域网 广域网 

    记得x&(x-1)每进行一次操作,其实是去除了x中的最后一个1,那么x的二进制有多少个1,此操作就进行了几次循环,遵循这个思路,上述程序只要写出

    其二进制形式就得出结论。 

    第四题编程题,

    这题实际上就是求六个数,可以相同,也可以两两不同, 但总和要等于50

    这题属于基本题。自己写程序吧。

    后续的n!也是属于基本题,但是题目考察的各种异常,请记得罗列出程序的可能异常。

    比如:越界,等于0,负数,等等

    java前端的不熟悉,略过

    作者:W.M.steve
    出处:http://www.cnblogs.com/weisteve/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    ios 视频旋转---分解ZFPlayer
    IOS lame库 pcm转mp3 分析(方案二)
    IOS lame库 pcm转mp3 分析(方案一)
    ios 动态库合成包(真机&模拟器)脚本
    lame 制作ios静态库
    React Native scrollview 循环播放
    React Native Image多种加载图片方式
    汉字转拼音(包含多音字)
    React Native Alert、ActionSheet
    React Native Picker (城市选择器)
  • 原文地址:https://www.cnblogs.com/weisteve/p/2190451.html
Copyright © 2020-2023  润新知