IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 紫光正式批/蔚来提前批笔试记录 -> 正文阅读

[开发测试]紫光正式批/蔚来提前批笔试记录

1、紫光展锐笔试——2021.7.20

1.1 代码类——python语言
(A):remove():删除数组中第一次出现的目标值

def remove_i(l,n):
	for i in l:
		if(i==n):
			l.remove(i); # 删除数组中第一次出现的目标值i
			return l;
if __name__ == '__main__':
	l=[1,2,3,3,3]
	n=3
	remove_i(l,n)
	print(l)
结果:[1,2]

(B):两数组相加

a=[1,2,3]
b=[2,2,4]
print(a+b)
结果:[1,2,3,2,2,4]

(C):and 需要判断所有的条件 都为true 才会返回;or 的话判断到 有一个true 就返回。所以and在数字判断时返回最后一个,or返回第一个
优先级:not > and > or
0:false
非0:true

print(5 and 2 or 1)
结果:2

print(1 or 5 and 2)
结果:1

print(0 and -5)
结果:0

print('0' and '-sf5')
结果:-sf5

print(0.010 and '-sf5')
结果:-sf5

print(0.00 and '-sf5')
结果:0.00

(D):赋值=、浅拷贝copy.copy()、深拷贝copy.deepcopy()——copy库
python数据类型可分为基本数据类型(包括整型、字符串、布尔及None等),和由基本数据类型作为最基本的元素所组成的像列表、元组、字典等
例1:在Python中 基本数据类型的赋值、深浅拷贝没有任何意义,都是指向同一块内存地址,也不存在层次问题。

import copy
n1 = 'abc'
n2 = n1
n3 = copy.copy(n1)
n4 = copy.deepcopy(n1)
print(id(n1))    #输出140350336680040
print(id(n2))    #输出140350336680040
print(id(n3))    #输出140350336680040
print(id(n4))    #输出140350336680040

例2:在python中 列表、元组、字典等非基本数据类型对象的赋值、深浅拷贝的区别
赋值:将变量的内存赋给另一个变量,让另一个变量指向那个内存地址。
浅拷贝:在内存中将第一层额外开辟空间进行存放。

n1 = {"k1": "abc", "k2": 123, "k3": ["abc", 123]}   
print(id(n1))    #140350328984328
n3 = copy.copy(n1)
print(id(n3))    #140350328986504可以看n3的内存地址已经和n1不同了

print(id(n1['k3']))    #140350328603976
print(id(n3['k3']))    #140350328603976 字典里的列表还是指向同一个列表

深拷贝:在内存中将数据重新创建一份,不仅仅是第一层,第二层、第三层…都会重新创建。

n1 = {"k1": "abc", "k2": 123, "k3": ["abc", 123]}
print(id(n1))    #140350328984328
n3 = copy.deepcopy(n1)

print(id(n1['k3']))    #140350328603976
print(id(n3['k3']))    #140350328604296 #可以看到第二层的列表也拷贝了一份,内存地址已经完全不一样

#注意,这仅局限于非基本数据类型,基本数据类型还是同一个内存地址
import copy
a=[1,2,3,4,['a','b']] 
c=copy.copy(a) 
a.append(5) 
a[4].append('c') 
print(a,", ",c)
结果:[1,2,3,4,['a','b','c'],5], [1,2,3,4,['a','b','c']]

参考:
https://www.cnblogs.com/caoj/p/7868844.html
https://blog.csdn.net/xl502689459/article/details/102582007

1.2 代码类——c语言
(A):地址问题

unsigned char *p1; 
unsigned long *p2; 
p1=(unsigned char *)0x801000; 
p2=(unsigned long *)0x810000;
printf("%x",p2+5);	// 以16进制输出;%o:以8进制输出

求 p1+5,p2+5?
结果(32位中):
1代表的是一个单位量   
p1 + 5 = p1 + 5 * sizeof(unsigned char) = p1 + 5 * 1 = 0x801000 + 0x5 = 0x801005   
p2 + 5 = p2 + 5 * sizeof(unsigned long) = p1 + 5 * 4 = 0x810000 + 20 = 0x810000 + 0x14=0x810014
解析:
p1指向字符型,一次移动一个字符型,1个字节;p1+5后移5个字节,16进制表示为5;
p2指向长整型,一次移动一个长整型,4个字节,p2+5后移20字节,16进制表示为14。
默认32位中:{ char每次移动1个字节;short移动2个字节 ;int , long ,float移动4个字节 ;double移动8个字节 }

补充:
一、整数而言:
1、10进制转化为十六进制(0x):整数除以16取余,直到商为0为止,然后从最后一个余数读到第一个
在这里插入图片描述)
2、十六进制转为10进制:按权展开、相加即得。
在这里插入图片描述
十进制与二进制、八进制转换类似(将16变为2、8)。

二、小数而言:
1、小数的十进制转换成十六进制的方法:
十进制小数转十六进制小数,方法为乘十六取整,每次乘以相应之后基数后取结果的整数部分即可。需注意的是并非所有的十进制小数都能完全转化为十六进制小数,这时就需要取近似值
例: 0.9032D 转化成 16进制小数
0.9032 * 16=14.4512 取整数14 即E
0.4512 * 16=7.2192 取整数7
0.2192 * 16=3.5072 取整数3
0.5072 * 16=8.1152 取整数8
0.1152 * 16=1.8432 取整数1
所以这个数转换成16进制就是0.E7381H

通用:十进制小数转换为其他进制小数:
十进制小数转换为其他进制的方法与转换为十六进制的方法相同。
十进制小数 转 R进制小数,方法为乘R取整,每次乘以相应之后基数后取结果的整数部分即可。需注意的是并非所有的十进制小数都能完全转化为R进制小数,这时就需要取近似值。

2、十六进制带小数转换成十进制
十六进制数和十进制数类似,以小数点为界,整数部分从低位到高位依次是0次方位、1次方位、...、n次方位;小数部分从高位到低位依次是-1次方位、-2次方位、...、-m次方位,都可用加权求和的方式表示。
十六进制数转换成十进制数时,先用加权求和的方式表示出来,再将十六进制数中的基数“10H”替换成对应的十进制数值“16”,同时也将十六进制数中的A、B、C、D、E、F替换成对应的十进制数值10、11、12、13、14、15。然后完全用十进制的规则计算出来,所得就是与该十六进制数相等十进制数。
例:1A6.3B8H
=1 * 10^2 + A * 10^1 + 6 * 10^0 + 3 * 10^(-1)+ B * 10^(-2)+ 8 * 10^(-3)
=1 * 16^2 + 10 * 16^1 + 6 * 16^0 + 3 * 16^(-1)+ 11 * 16^(-2)+ 8 * 16^(-3)
=419.232422

(B):for(; ; ) 循环
for(; ; ) :无限循环。因for(;;)中没有循环条件,所以就是无条件循环,就是只能通过循环体中的内容来跳出循环

(C):执行次数

int x=0,i=0; 
while(!x && i<3) 
{
	x++;
	i++;
} 
循环一共执行几次:1次
解析:
第一次:!x为真,i<3为真。执行循环:x++; x为1,i++; i为1。
第二次:!x为假。while括号里为假,不执行循环。
所以循环只执行1次。循环过后x=1,i=1

2.1 数据结构
1、1,11,21,1211,111221,第六个数是多少?
答案:312211
解析:
11— 表示前一个数“1”是 1 个 1;
21— 表示前一个数“11”是 由 2 个 1 组成;
1211— 表示前一个数“21”是 由 1 个 2、1 个 1 组成;
111221— 即 11 12 21 ,表示前一个数“1211”是依次由 1 个 1,1 个 2,2 个 1组成;
所以,下一个数应填312211—即 31 22 11,表示前一个数“111221”是依次由3 个 1,2 个 2,1 个 1 组成;
同理,再下一个数根据312211填 13112221—即13 11 22 21, 表示前一个数“312211”是依次由 1 个 3,1 个 1,2 个 2,2 个 1 组成。
…依次类推

2、线性表的链式存储结构优于顺序存储结构。(X)
解析:以偏盖全。
顺序存储需要开辟一个定长的空间读写速度快,缺点不可扩充容量(如果要扩充需要开辟一个新的足够大的空间把原来的数据重写进去)
链式存储无需担心容量问题读写速度相对慢些,由于要存储下一个数据的地址所以需要的存储空间比顺序存储大
综上所述,如果元素个数已知,且插入删除较少的可以使用顺序结构,而对于频繁有插入删除操作,元素个数未知的,最好使用链式结构,编程时可结合要处理的数据的特点设计数据结构的。

3、下列说法错误的是 (B D)
A.利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,这种形式的栈也称为顺序栈
B.top=0 时为空栈,元素进栈时指针 top 不断地减 1
C.当top等于数组的最大下标值时则栈满
D.栈不能对输入序列部分或全局起求逆作用
解析:
A正确,虽然链栈也可以实现地址连续,但无法做到依次存放数据元素,因为除了元素域还需要存放指针域。因此满足条件的只有顺序栈
B错误,top= -1时为空栈top=0只能说明栈中只有一个元素,并且元素进栈时top应该自增
C正确,top所指向的对象永远是栈顶元素
D错误,栈的特性(先进后出)就决定了可以作为求逆元素的辅助空间。所谓求逆运算就是ABC依次入栈,输入CBA。

4、利用归并排序方法对数字序列:5,19,17,21,11,8,1进行排序,共需要进行( B)次比较
A.10
B.11
C.12
D.14
解析:
(1)首先(5,19)一次 ,(17,21)一次,(11,8)一次
(2)归并(5,19)(17,21):
5首先与17进行比较得到 5,17;(17,21)组中已经没有比17更小的了,但(5,19)组中不一定,所以17与19进行比较得到5,17,19;此时(5,19)组中没有比19更小的数了,但是(17,21)组中却不一定,所以19与21进行比较,得到5,17,19,21 一共三次比较
(3)归并(8,11) (1) :
8首先与1比较 得到 1,8 然后不再比较,因为剩下的数比8大,那么一定比1大(哎呀)。这次比较了 1次
然后对(5,17,19,21)和(1,8,11)排序 首先5与1进行,得到 1,5 。(5,17,19,21)组中没有比5小的,但(1,8,11)组中不一定,所以5与8进行比较得到1,5,8.同样(1,8,11)组中往后没有比8小的数,但是(5,17,19,21)组中不一定,所以8和17比较得到1,5,8,17;(5,17,19,21)组中往后没有比17更小的数,所以17与11比较得到 1,5,8,11,17;剩下的都比17大,不再比较得到(1,5,8,11,17,19,21)比较四次
所以一共比较了1+1+1+4+4=11次。

5、在这里插入图片描述
6、二叉树的三个部分:根结点、左子树、右子树组成。

3.1 软件测试
1、软件验收测试包括哪些?(ACD)
A、正式验收测试
B、白盒测试
C、alpha测试
D、beta测试
解析:
软件验收测试分为三类:
正式验收测试;
非正式验收测试其中包括α测试(由用户、测试人员、开发人员共同参与的内部测试。)和β测试(内测后的公测,即完全交给最终用户测试。)

2、软件生命周期中,需求阶段的软件缺陷修复费用最低

3、测试设计员的职责有:(B C )
A、制定测试计划
B、设计测试用例
C、设计测试过程、脚本
D、评估测试活动
解析:
测试人员的职责是:
1.编写测试用例
2.执行测试,发现软件测试缺陷并提交缺陷报告
3.验证所发现的缺陷是否得到修改
4.编写测试总结报告
5.设计测试过程和脚本
制定测试计划应是测试经理来做的,评估测试活动测试经理组织召集开发和测试的相关人员来做

4.1 计算机网络
1、相同码元速率下,那种传输方式信息传输速率最高 ? (B)
A、QPSK
B、16QAM
C、BPSK
D、GMSK
解析:
QPSK,它每符号为 2bit 的信息;
16QAM,它每符号为 4bit 的信息;
BPSK,它每符号为 1bit 的信息;
MSK,它每符号 2bit 的信息;

2、LTE系统多址方式包括(C D)
A.TDMA
B.CDMA
C.OFDMA
D.SC-FDMA

3、5G技术的应用场景有
在这里插入图片描述
4、网络层
在这里插入图片描述

2、蔚来笔试——2021.7.18

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

class Father(object):
	x=1
	
class Son(Father):
	pass

class Daughter(Father):
	pass

print(Father.x,Son.x,Daughter.x)

Son.x=2
print(Father.x,Son.x,Daughter.x)

Father.x=3
print(Father.x,Son.x,Daughter.x)

结果:
(1, 1, 1)
(1, 2, 1)
(3, 2, 3)

在这里插入图片描述
在这里插入图片描述
在公司局域网上ping www.qq.com一定不涉及的网络协议是( A )。
A. UDP
B. DNS
C. ICMP
D. RAAP
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-07-24 11:47:47  更:2021-07-24 11:49:01 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/27 12:56:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码