选择题
1.TCP/IP 参考模型的网络层提供的是( A )。
A.无连接不可靠的数据报服务
B.无连接可靠的数据报服务
C.有连接不可靠的虚电路服务
D.有连接可靠的虚电路服务
解析:
网络层是不可靠的,面向无连接的。
2.外部网关协议EGP是用于自治系统内部路径信息获取和交换的协议。(B)
A.正确 B.错误
解析:
EGP路由器只向其自治区域边界上的路由器转发路由选择表信息来获得对方自治系统的路由信息,从而为IP数据报选择最佳路由,并不交换。
3.使用 ping 命令 ping 另一台主机,就算收到正确的应答,也不能说明(C)
A.目的主机可达
B.源主机的ICMP软件和IP软件运行正常
C.Ping报文经过的网络具有相同MTU
D.Ping报文经过的路由器路由选择正常
解析:
MTU默认1500, 将MTU设置为其它值也可以ping通, 因此ping通也不能说明MTU相同
4.滑动窗口协议中,发送窗口保存的是_____A_____
A.可发送的帧序号
B.可接收的帧序号
C.不可发送的帧序号
D.不可接收的帧序号
5.下述有关网络分层说法错误的是?(C)
A.http — 应用层 B.ftp ---- 应用层 C.ICMP — 应用层 D.802.2 — 数据链路层
解析:
ICMP是网络层协议
6.关于Internet域名系统的描达中,错误的是 (C)
A.域名解析需要一组既独立又协作的域名服务器
B.域名服务器逻辑上构成一定的层次结构
C.域名解析总是从根域名服务器开始
D.递归解析是域名解析的一种方式
解析:
域名解析从本地服务开始。
7.以下关于TCP/IP协议的描述中,不正确的是(C)
A.TCP负责将信息拆分为数据包,并在数据包达到目的地后对其进行装配
B.IP负责为数据包选择路由以使将其传递到正确的目的地
C…TCP协议是可靠的服务,当客户端第一次向服务端发送会话请求的时候,就会把数据传输过去
D.IP、ICMP和IGMP都是网络层的协议
解析:
TCP需要建立连接才可以传输数据
8.下列哪一项不是网卡的基本功能(B )。
A.数据转换 B.路由选择 C.网络存取控制 D.数据缓存
解析:
网卡是工作在链路层的网络组件,是局域网中连接计算机和传输介质的接口,不仅能实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接收、帧的封装与拆封、介质访问控制、数据的编码与解码以及数据缓存的功能等。
9.局域网的安全措施首选防火墙技术。(B )
A.错误 B.正确
解析:
防火墙是一种保护计算机网络安全的技术性措施,它通过在网络边界上建立相应的网络通信监控系统来隔离内部和外部网络,以阻挡来自外部的网络入侵。
10.IP协议提供哪种服务?(A)
A.无连接服务 B.面向连接的服务 C.虚电路服务 D.以上都不是
解析:
IP服务的三个特点为不可靠、面向无连接和尽最大努力投递。
编程题
给定一个矩阵 A, 返回 A 的转置矩阵。
矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。
示例 1:
输入:[[1,2,3],[4,5,6],[7,8,9]]
输出:[[1,4,7],[2,5,8],[3,6,9]]
示例 2:
输入:[[1,2,3],[4,5,6]]
输出:[[1,4],[2,5],[3,6]]
import java.util.Arrays;
import java.util.Scanner;
import javax.swing.plaf.synth.SynthDesktopIconUI;
public class day16 {
public static void main(String[] args) {
//输入矩阵A
//调用方法转置矩阵
//输出转置矩阵
Scanner scanner=new Scanner(System.in);
System.out.print("输入矩阵的行,列:");
int len1=scanner.nextInt();
int len2=scanner.nextInt();
int[][] A=new int[len1][len2];
System.out.println("请输入矩阵的里面的值:");
for(int i=0;i<A.length;i++){
for(int j=0;j<A[i].length;j++){
A[i][j]=scanner.nextInt();
}
}
int[][] arr = transpose(A);
for(int i=0;i<arr.length;i++){
System.out.println(Arrays.toString(arr[i]));
}
}
private static int[][] transpose(int[][] A) {
int[][] B=new int[A[0].length][A.length];
for(int i=0;i<A[0].length;i++){
for(int j=0;j<A.length;j++){
B[i][j]=A[j][i];
}
}
return B;
}
}