CSP-S提高组笔试题重点题汇总:
今天我给大家分享一些 CSP-S 第一轮笔试中的一些重点题,包含讲解。
第一题:
1.十进制小数13.375对应的二进制数是()。
A.1101.011
B.1011.011
C.1101.101
D.1010.01
解析:
大家肯定都对一个十进制整数转为二进制有些了解(假设这个十进制整数为x,先求出x除以2的余数,为几久代表这个二进制为上的数是几,然后不断的除以二向下取整,知道x为0为止。十进制整数转k进制道理也是一样,就是变成不断求出x除以k的余数了)。
但是对于小数的二进制,我们可以进一步深究,首先求出整数的二进制,13转为二进制就是1101,接下来剩下0.375,现在我们要先算出2的负n次方,这个就相当于是2求的n次方的倒数(如2^-1=1/2 2^-2=1/4 2^3=1/8)。
接下来就来看小数怎么转成2的负数进制了,不同于整数,它是不断的乘以2,如果乘了2之后整数部分还是为0,那么当前2的负数进制就为0,如果整数部分为1那么当前2的负数进制就为1,然后去掉整数部分,留下小数部分继续算,知道去掉整数部分后值为0为止。
我们先来举一个例子,比如说0.75,它的二进制应该为0.11(因为0.75=2^-1+2^-2),按照上述方法进行推导:
1.0.75*2=1.5 -------------------- 当前位为1
2.1.5-1=0.5 -------------------- 去掉整数部分
3.0.5*2=1 -------------------- 当前位为1
4.1-1=0 -------------------- 结束
这样就可以得到二进制序列0.11。
然后我们来求题目要求的0.375的二进制序列:
- 0.375*2=0.75 ------- 当前位为0
- 0.75*2=1.5 ------- 当前位为1
- 1.5-1=0.5 ------- 去掉整数部分
- 0.5*2=1 ------- 当前位为1
- 1-1=0 ------- 结束
这样就得到了0.011这个二进制序列,算上之前整数部分的二进制序列,那么答案就是1101.011.所以我们选择A。
答案:
A
第二题:
2.为解决web应用中的不兼容问题,保障信息的顺利流通,( )制定了一系列标准,涉及HTML、XML、CSS等,并建议开发者遵循。
A. 微软
B. 美国计算机协会(ACM)
C. 联合国教科文组织
D. 万维网联盟(W3C)