1、TCP建立连接的三次握手中,第二次握手发送的包会包含的标记,==最正确==的描述是?
2021-04-27 12:31:32
- A、 ACK
- B、 SYN,ACK
- C、 SYN,PSH
- D、 SYN
回答正确 正确答案: B
解析:
第一次握手:Client将SYN(同步序列编号Synchronize Sequence Numbers)置1,随机产生一个初始序列号seq发送给Server,进入SYN_SENT状态;
第二次握手:Server收到Client的SYN=1之后,知道客户端请求建立连接,将自己的SYN置1,ACK(确认字符Acknowledge Character)置1,产生一个acknowledge number=sequence number+1,并随机产生一个自己的初始序列号,发送给客户端;进入SYN_RCVD状态;
第三次握手:客户端检查acknowledge number是否为序列号+1,ACK是否为1,检查正确之后将自己的ACK置为1,产生一个acknowledge number=服务器发的序列号+1,发送给服务器;进入ESTABLISHED状态;服务器检查ACK为1和acknowledge number为序列号+1之后,也进入ESTABLISHED状态;完成三次握手,连接建立。
2、以下那些是HTTP2.0加入的新特性?
2021-04-27 12:32:23
- A、 keep-alive
- B、 Pipelining
- C、 server push
- D、 SSL/TSL
回答正确 正确答案: C
解析:
C选项正确
3、在Linux系统上,下面那个命令不可以用来查看文件内容
2021-04-27 12:32:55
- A、 cat
- B、 ls
- C、 less
- D、 more
回答正确 正确答案: B
解析:
linux 系统可以用来查阅全部文件的三种命令: cat 、 more 、 less
more 命令 :可以让屏幕在显示满一屏幕时,此时可按空格健继续显示下一个画面,或按 Q 键停止显示。
less 命令 :可以分页显示文件,和 more 命令的区别就在于它支持上下键卷动屏幕,当结束浏览时,只要在 less 命令的提示符“ : ”下按 Q 键即可。
ls命令:ls主要用来查看目录清单
4、
int main(){
fork()||fork();
}
共创建几个进程:
2021-04-27 12:33:29
- A、 1
- B、 2
- C、 3
- D、 4
回答正确 正确答案: C
解析:
fork()给子进程返回一个零值,而给父进程返回一个非零值;
在main这个主进程中,首先执行 fork() || fork(), 左边的fork()返回一个非零值,根据||的短路原则,前面的表达式为真时,后面的表达式不执行,故包含main的这个主进程创建了一个子进程, 由于子进程会复制父进程,而且子进程会根据其返回值继续执行,就是说,在子进程中, fork() ||fork()这条语句左边表达式的返回值是0。
所以||右边的表达式要执行,这时在子进程中又创建了一个进程, 即main进程->子进程->子进程,一共创建了3个进程。
5、如果系统的umask设置为244,创建一个新文件后,它的权限:
2021-04-27 21:02:34
- A、 --w-r--r--
- B、 -r-xr--r--
- C、 -r---w--w-
- D、 -r-x-wx-wx
回答正确 正确答案: C
解析:
Linux中的权限有r(读) w(写) x(执行),分别用数字4,2,1代表。
Umask是设置系统创建文件时的默认权限,是创建文件权限补码,对文件来说最大值是6 Umask设为为244,则创建的文件默认权限是422,文件的第一位是‘-’也就是-r---w--w-
6、假设有60行70列的二维数组 a[0 …59, 0…69 ] 以列序为主序顺序存储,其基地址为10000,每个元素占2个存储单元,那么第32行第58列的元素 a[ 31,57 ] 的存储地址为
2021-04-27 21:05:39
- A、 16902
- B、 16904
- C、 14454
- D、 以上答案均不对
回答正确 正确答案: A
解析:
第32行第58列的元素 表示为 a[ 32,58 ] ,但是我们习惯写成a【31】【57】 首先,二维数组可以表示为A【60】【70】 (60行70列) a[ 31,57 ]
以列序为主: (5760+31)2+10000= 16902
以行序为主: (3170+57)2 +10000= 14454
7、下面程序的输出是:
#define f(x) x*x
main (){
int a=6,b=2,c;
c=f(a)/f(b);
printf("%d",c);
}
2021-04-27 21:06:35
- A、 3
- B、 18
- C、 36
- D、 9
回答正确 正确答案: C
解析:
将宏表达式展开:c = 6*6/2*2=36.
8、在循环队列中, 若尾指针 rear 大于头指针 front, 其元素个数为 rear- front。
2021-04-27 21:06:59
- A、 正确
- B、 错误
回答正确 正确答案: A
解析:
正确
9、在C语言中,关于静态变量的说法,正确的有( )
2021-04-27 21:08:36
- A、 函数中的静态变量,在函数退出后不被释放
- B、 静态变量只可以赋值一次,赋值后则不能改变
- C、 静态全局变量的作用域为一个程序的所有源文件
- D、 静态全局变量过大,可能会导致堆栈溢出
回答正确 正确答案: A
解析:
B选项:静态全局变量可以重复赋值
C选项:作用域为当前文件
D选项:静态全局变量不是存在堆栈里的,所以不存在堆栈溢出
10、【简答题】(10-10)
简述tcp的流量控制相关算法
=====================================================================================================================
(并查集预习题)以下关于并查集的说法中,正确的是() ① 并查集是一种数据结构,用于处理一些不相交集合的合并和查询问题。
② 并查集通常支持查询(FIND)和合并(UNION)操作。
③ 并查集通常使用“路径压缩”和“按秩(或深度)合并”这两种优化方式。
④ 经过优化的并查集通常具有O(n)的空间复杂度和O(α(n))的单次操作复杂度。其中,α为反阿克曼函数。
2021-04-27 21:14:45
- A、 ①②
- B、 ①②③
- C、 ①③
- D、 ①②③④
回答正确 正确答案: D
解析:
以上均正确
20210427,一天又快过去了,继续加油鸭~