阿里巴巴 暑假实习 笔试题(2014年3月29日)

缘由

当时去笔霸的题,现在终于流传到网上了。

所谓参考答案,也不是阿里巴巴给的,有些我做的,有些是网上摘抄的,总之是我认可的。所以请大家还是抱着怀疑的态度去考察每一道题。

主要参考了一下博客:

  • http://blog.csdn.net/dianacody/article/details/22690015
  • http://blog.csdn.net/iloveyoujelly/article/details/22941531


一、单选题(前10题,每题2分;后10题,每题3分;共50分。选对得满分,选错倒扣1分,不选德得0分)

1.假设一个主机的IP地址为192.168.5.121,而子网掩码为255.255.255.248。那么该主机的网络号部分(包括子网号部分)为      。 
 A. 192.168.5.12      B. 192.168.5.121    C. 192.168.5.120    D.192.168.5.32 

答:
首先,计算机的地址有2部分,2部分再一起才能完整的表示出一个计算机。不过如果你看到某个文档上面只有IP没有后面的子网掩码,那就表示用的是默认的子网掩码。。
默认子网掩码---A类IP为255.0.0.0;B类IP为255.255.0.0;C类IP为255.255.255.0
A类IP地址范围从1.0.0.0 到126.0.0.0。可用的A类网络有126个,每个网络能容纳1亿多个主机。 
B类IP地址范围从128.0.0.0到191.255.255.255。可用的B类网络有16382个,每个网络能容纳6万多个主机 。 
C类IP地址范围从192.0.0.0到223.255.255.255。C类网络可达209万余个,每个网络能容纳254个主机。 
其次,
所谓网络号就是这个ip段的第一个ip地址,另外,最后一个ip地址就是广播地址。
网络号可以通过本网段的任一一个ip和子网掩码 按位 与 出来。
所以这道题就将192.168.5.121 和 255.255.255.248 的二进制相与,由于子网掩码的前三位都是255,都是1111 1111 所以,ip地址的前三个也不变。下面是与第4个。
121:01111001
248:11111000
120:01111000
所以网络号就是:192.168.5.120/29。
其中,29的意思就是指这个ip地址的前29个bit位用来表示网段号,后三位用来表示主机号。如何得到29呢?就是通过子网掩码来看的,因为子网掩码 255.255.255.248 写成二进制:
1111 1111.1111 1111.1111 1111.11111000 前面有29个1,这就代表了前面29个是固定的网段号,只有后面3个000可以变。
000 为 120
111 为 127
所以这个网段的ip地址为:192.168.5.120-127
网络号:192.168.5.120
广播地址:192.168.5.127
可用地址是192.168.5.121-126
附加两个小的知识点:
运算规则:0&0=0;   0&1=0;    1&0=0;     1&1=1;
即:两位同时为“1”,结果才为“1”,否则为0

二进制与十进制 互相转换:

二进制数1101.01转化成十进制
1101(2)=1*20+0*21+1*22+1*23 +0*2-1+1*2-2=1+0+4+8+0+0.25=13.25
十进制789转二进制
789=1100010101
789/2=394 余1 第10位
394/2=197 余0 第9位
197/2=98 余1 第8位
98/2=49 余0 第7位
49/2=24 余1 第6位
24/2=12 余0 第5位
12/2=6 余0 第4位
6/2=3 余0 第3位
3/2=1 余1 第2位
1/2得0 余1 第1位

2.64位系统上,定义变量int*a[2][3]占据  字节。 
A.4   B.12    C. 24    D.48


刚开始我以为是指针的大小,但是64位应该8个字节,没有这个答案,那可能就是int类型的字节大小*个数了。所有就是4*6=24。选c。

32位或64位系统上的基本类型的字节大小,可用如sizeof(char),sizeof(char*)等得出
32位编译器:
char:1个字节
char*(即指针变量):4个字节(32位的寻址空间是2^32,即32个bit,也就是4个字节。同理64位编译器)
shortint:2个字节
int:4个字节
unsignedint:4个字节
float:4个字节
double:8个字节
long:4个字节
longlong:8个字节
unsignedlong:4个字节

64位编译器:
char&
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值