【题目描述】
第1题最大的10位无符号二进制整数转换成十进数是()。A.511
B.512
C.1023
D.1024
【我提交的答案】: A |
【参考答案与解析】: 正确答案:C |
正确答案C
计算机的进制式桌面换算的,有什么规律吗?
试题二(共 15分)
阅读以下说明和C函数,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明 1】
函数Counter(int n, int w[])的功能是计算整数n的二进制表示形式中1的个数,同时用数组w记录该二进制数中1所在位置的权。
例如,十进制数22的二进制表示为10110。对于该二进制数,1的个数为3,在w[0]中存入2(即 )、w[1]中存入4(即 )、w[2]中存入16(即 )。
1
2 2
2 4
2
【C函数 1】
int Counter(int n, int w[])
{ int i = 0, k = 1;
while ((1) ) {
if (n % 2) w[i++] = k;
n = n / 2; (2) ;
}
return i;
}
【说明 2】
函数 Smove(int A[], int n)的功能是将数组中所有的奇数都放到所有偶数之前。其过程为:设置数组元素下标索引i(初值为0)和j(初值为n-1),从数组的两端开始检查元素的奇偶性。若 A[i]、A[j]都是奇数,则从前往后找出一个偶数,再与 A[j]进行交换;若 A[i]、A[j]都是偶数,则从后往前找出一个奇数,再与A[i]进行交换;若 A[i]是偶数而A[j]是奇数,则交换两者,直到将所有的奇数都排在所有偶数之前为止。
【C函数 2】
void Smove(int A[], int n)
{ int temp, i = 0, j = n-1;
if (n < 2 ) return;
while (i < j ) {
if (A[i] % 2 == 1 && A[j] % 2 == 1 ) { (3) ; }
else if (A[i] % 2 == 0 && A[j] % 2 == 0 ) { (4) ; }
else {
if ((5) ) {
temp = A[i]; A[i] = A[j]; A[j] = temp;
}
i++, j--;
}
}
}
A.高级语言编写的程序的可移植性最差
B.不同型号CPU的计算机具有不同的机器语言
C.机器语言是由一串二进制数0、1组成的
D.用机器语言编写的程序执行效率最高
●计算机内采用二进制的原因不包括(15)。
(15)A.技术实现简单
B.运算规则简单
C.数的表示更直观
D.便于逻辑运算与算术运算互相转换
为了保证全网的正确通信,Internet为联网的每个网络和每台主机都分配了唯一的地
址,该地址由32位二进制数组成,并每隔8位小数点分隔,将它称为 ()
A.TCP地址
B.IP地址
C.WWW服务器地址
D.WWW客户机地址
叙述错误的是()。
A.C 语言源程序经编译后生成后缀为 .obj 的目标程序
B.C 程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
C.用 C 语言编写的程序称为源程序,它以 ASCII 代码形式存放在一个文本文件中
D.C 语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
供应商与商品问存在“供应”联系,每个供应商可供应多种商品,每种商品最多只能向5个供应商订购;供应商供应商品给每个商店有月供应量;商店与商品间存在“销售”联系,每个商店销售的商品应在100~1000种之间,每种商品最多只能放在8个商店销售,商店销售商品有月计划数。
(1) 试画出E-R图;
(2) 将E-R图转换成关系模型,并注明主码和外码。