【C/C++笔试练习】TCP、IP广播、ARP协议、IP路由器、MAC协议、三次握手、TCP/IP、子网划分年、会抽奖、抄送列表

文章目录

  • C/C++笔试练习
  • 选择部分
    • (1)TCP
    • (2)IP广播
    • (3)ARP协议
    • (4)IP路由器
    • (5)MAC协议
    • (6)三次握手
    • (7)TCP/IP
    • (8)TCP
    • (9)TCP/IP
    • (10)子网划分
  • 编程题 day35
    • 年会抽奖
    • 抄送列表

C/C++笔试练习

选择部分

(1)TCP

  主机甲和乙已建立了TCP连接,甲始终以MSS=1KB大小的段发送数据,并一直有数据发送;乙每收到一个数据段都会发出一个接收窗口为10KB的确认段。若甲在t时刻发生超时时拥塞窗口为8KB,则从t时刻起,不再发生超时的情况下,经过10个RTT后,甲的发送窗口是()

  A.10KB
  B. 12KB
  C.14KB
  D.15KB

  答案:A

  1.把慢开始的门限值设为当前窗口的一半,即ssthresh=1/2*8KB=4KB

  2.把拥塞窗口cwnd设置为1个最大报文段MSS大小

  3.再次从慢启动阶段开始。发生拥塞后

  开始慢启动 cwnd=1KB,之后呈指数增长。

  经过1个RTT cwnd=2^1=2KB
  经过2个RTT cwnd=2^2=4KB,此时到达门限值ssthresh,之后 进入拥塞避免 阶段经过3个RTT cwnd=4+1=5KB,由于题目说之后一直都没有发生超时,cwnd会一直线性增长到接收窗口大小
  经过8个RTT cwnd=10KB,因为发送端不能超过接收端10,此后拥塞窗口一直保持cwnd=10KB.

  发送窗口大小=min(接收窗口,拥塞窗口)=10KB。

在这里插入图片描述

  

(2)IP广播

  某主机的IP地址为180.80.77.55,子网掩码为 255.255.252.0。若该主机向其所在子网发送广播分组,则目的地址可以是()

  A.180.80.76.0
  B. 180.80.76.255
  C.180.80.77.255
  D.180.80.79.255

  答案:D

  180.80.77.55

  77 :0100 1101

  1.子网掩码255.255.252.0 (即11111111.11111111.11111100.00000000)网络号为连续的1,主机号为连续的0,也就是10位。

  2.然后题目要发送广播分组,所以求的是广播地址,广播地址的主机位也是全为1, 所以主机2180.80.77.55所在的广播地址就是180.80.010011(11.11111111),括号里面的是主机号,主机号全为1就是广播地址,即180.80.79.255。

  

(3)ARP协议

  ARP协议的功能是()

  A.根据IP地址查询MAC地址
  B.根据MAC地址查询IP地址
  C.根据域名查询IP地址
  D.根据IP地址查询域名

  答案:A

  当一台设备知道对方的IP地址,不知道对方的MAC 地址时,启动ARP,发送ARP Request请求广播包到其他主机,收到广播包的主机查看,只有该请求的设备才会单播回答ARP Reply响应包。

  所以ARP协议本质上是用ip地址查询MAC地址的协议。

  

(4)IP路由器

  下列关于IP路由器功能的描述中,正确的是()

  Ⅰ.运行路由协议,设置路由表
  Ⅱ.监测到拥塞时,合理丢弃IP分组
  Ⅲ.对收到的IP分组头进行差错校验,确保传输的IP分组不丢失
  Ⅳ、根据收到的IP分组的目的IP地址,将其转发到合适的输出线路上

  A.仅Ⅲ、 Ⅳ
  B.仅Ⅰ、Ⅱ、 Ⅲ
  C.仅Ⅰ、Ⅱ、Ⅳ
  D.Ⅰ、 Ⅱ、Ⅲ、Ⅳ

  答案:C

  IP层为什么不对数据部分进行差错校验?

  因为网络层是“尽最大努力完整的传输数据包”,差错检测已由数据链路层实现,IP层没必要再进行一次校验。

  优点就是,因为不负责差错检测和纠错,所以可获得较高的传输性能。

  缺点就是,因为IP层不负责差错检测,那么错误检测只能在传输层或应用层被发现,使纠正错误的时间增加了。

  

(5)MAC协议

  以太网的MAC协议提供的是()

  A.无连接不可靠服务
  B.无连接可靠服务
  C.有连接不可靠服务
  D.有连接可靠服务

  答案:A

  1.ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。

  2.ICMP协议的底层协议使用IP协议

  

(6)三次握手

  主机甲向主机乙发送一个(SYN=1,seq=11220)的TCP 段,期望与主机乙建立TCP连接,若主机乙接受该连接请求,则主机乙向主机甲发送的正确的TCP段可能是()

  A.(SYN=0,ACK=0,seq=11221,ack=11221)
  B.(SYN=1,ACK=1,seq=11220,ack=11220)
  C.(SYN=1,ACK=1,seq=11221,ack=11221)
  D.(SYN=0,ACK=0,seq=11220,ack=11220)

  答案:C

在这里插入图片描述

  1.主机乙给主机甲应该回复 SYN+ACK数据包,排除A,D。

  2.由于主机甲在SYN数据报当中的序号为(seq=11220),所以主机乙给主机甲回复的确认序号是ack=11221,排除B。

  3.主机乙发送的SYN+ACK数据包的序号seq可以从任意位置开始,所以,C是正确选项。

  

(7)TCP/IP

  TCP/IP参考模型的网络层提供的是()

  A.无连接不可靠的数据报服务
  B.无连接可靠的数据报服务
  C.有连接不可靠的虚电路服务
  D.有连接可靠的虚电路服务

  答案:A

  

(8)TCP

  主机甲和主机乙之间建立一个TCP连接,TCP最大段长度为1000字节,若主机甲的当前拥塞窗口为4000字节,在主机甲向主机乙连续发送两个最大段后,成功收到主机乙发送的第一个段的确认段,确认段中通告的接收窗口大小为2000字节,则此时主机甲还可以向主机乙发送的最大字节数是()

  A.1000
  B. 2000
  C.3000
  D.4000

  答案:A

  网络层提供无连接不可靠的数据报服务,例如协议。

  

(9)TCP/IP

  在TCP/IP体系结构中,直接为ICMP提供服务的协议是()

  A.PPP
  B. IP
  C.UDP
  D.TCP

  答案:B

  1.发送方的发送窗口的上限值取接收方窗口和拥塞窗口中的最小值,即min(4000,2000)=2000B,由于还未收到第二个最大段的确认,所以此时主机甲还可以向主机乙发送的最大字节数为2000-1000=1000B。

  

(10)子网划分

  某网络的IP地址空间为192.168.5.0/24,采用定长子网划分,子网掩码为255.255.255.248,则该网络的最大子网个数、每个子网内的最大可分配地址个数()

  A.32,8
  B. 32,6
  C.8,32
  D.8,30

  答案:B

  一个IP的组成部分为:网络号+子网号+主机号:

  对于这样的IP 192.168.5.0/24 由/24可以知道其子网掩码默认为255.255.255.0

  按照子网掩码255.255.255.248进行划分

  二进制位: (11111111.11111111.11111111)(24表示网络号).11111(子网掩码)000,子网掩码中全1表示的网络号和子网号部分,0部分表示主机号部分。

  (11111)2二进制转换为十进制为2^5 =32 所以可以划分为32个子网,而后面有3个0,所以000-111表示的范围2^3-2(全0和全1不可用)=6。

            

编程题 day35

年会抽奖

年会抽奖

  解题思路:错排的递推公式是:D(n) = (n - 1) [D(n - 2) + D(n - 1)],也就是n - 1倍的前两项和。公式推导可以参考百度百科。通过这个递推公式可以得到在总数为n的时候,错排的可能性一共有多少种。那么要求错排的概率,我们还需要另一个数值,就是当总数为n的时候,所有的排列组合一共有多少种,那么根据排列组合,肯定是使用Ann的公式来求,也就是n的阶乘。所以结果很简单,就是用公式求出第n项的错排种类,和n的阶乘,然后两者一除,就是概率了。

#include <iostream>
#include <vector>
using namespace std;

int main() 
{
    int n;
    while (cin >> n) 
    {
        vector<double> arr(n);
        arr[0] = 0, arr[1] = 1;
        for (int i = 2; i < n; i++) 
        {
            arr[i] = i * (arr[i - 1] + arr[i - 2]);
        }
        double base = 1;
        for (int i = 1; i <= n; i++)
            base *= i;
        printf("%.2lf%%\n", arr[n - 1] / base * 100);
    }
    return 0;
}

  

抄送列表

抄送列表

  解题思路:1. 通过getiine(cin, names)方法获取第一行中的所有名字 2. 解析出第一行中的所有名字保存在unordered_set中 3. 获取第二行中的名字,检测该名字是否存在,并按照题目的要求进行输出。

#include<iostream>
#include<string>
using namespace std;

int main()
{
	string s, res;
	while (getline(cin, s))
	{
		getline(cin, res);
		bool sta = false;
		for (int i = 0; i < s.length(); i++)
		{
			string t;
			if (s[i] == '"')
			{
				i++;
				while (i<s.length()&&s[i] != '"')
				{
					t += s[i];
					i++;
				}
				if (t == res)
				{
					sta = true;
					break;
				}
			}
			else if (s[i] != ',')
			{
				while (i<s.length()&&s[i] != ',')
				{
					t += s[i];
					i++;
				}
				if (t == res)
				{
					sta = true;
					break;
				}
			}
		}
		if (sta == true)
			cout << "Ignore" << endl;
		else
			cout << "Important!" << endl;
	}
	return 0;
}

            

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/634338.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【设计模式深度剖析】【A】【创建型】【对比】| 工厂模式重点理解产品族的概念

回 顾&#xff1a;创建型设计模式 1.单例模式&#x1f448;️ 2.工厂方法模式&#x1f448;️ 3.抽象工厂模式&#x1f448;️ 4.建造者模式&#x1f448;️ 5.原型模式&#x1f448;️ &#x1f448;️上一篇:原型模式 | &#x1f449;️下一篇:代理模式 目录…

JavaScript基础(九)

冒泡排序 用例子比较好理解: var arry[7,2,6,3,4,1,8]; //拿出第一位数7和后面依次比较&#xff0c;遇到大的8就换位&#xff0c;8再与后面依次比较&#xff0c;没有能和8换位的数&#xff0c;再从下一位2依次与下面的数比较。 console.log(排列之前&#xff1a;arry); for (…

Unity Render入门

概述 在unity中渲染相关的组件是和Render关联的&#xff0c;比如我们常见的3D模型中的MeshRender&#xff0c;UI中的RenderCanvas等都是和Render相关联的&#xff0c;相信在unity的学习过程中&#xff0c;一定看到过非常多和Render相关的内容&#xff0c;那让我们学习一下这部…

GRPC服务使用

目标&#xff1a; 1.什么是GRPC服务&#xff1f; 2.安卓客户端怎么不熟GRPC服务&#xff1f; 3.怎么生成GRPC的java类&#xff1f; 一、什么是GRPC服务&#xff1f; GRPC 一开始由 google 开发&#xff0c;是一款语言中立、平台中立、开源的远程过程调用(RPC)系统。 支持长…

【Linux】-Tomcat安装部署[12]

目录 简介 安装 安装部署JDK环境 解压并安装Tomcat 简介 Tomcat是由Apache开发的一个Servlet容器&#xff0c;实现了对Servlet和JSP的支持&#xff0c;并提供了作为Web服务器的一些特有功能&#xff0c;如Tomcat管理和控制平台、安全域管理和Tomcat阀等。 简单来说&#…

vscode 插件-02 html

open in brower 安装后可以在vscode中,使用浏览器打开编辑的.html文件,以查看效果。 Live Preview 实现网页的实时渲染显示功能&#xff0c;即实时预览。

K8S认证|CKA题库+答案| 1. 权限控制RBAC

1、权限控制RBAC 您必须在以下Cluster/Node上完成此考题&#xff1a; Cluster Master node Worker node k8s master …

ptrade从零开始学习量化交易第16期【ptrade策略API介绍之set_slippage-设置滑点】

设置函数 更加详细的调用方法&#xff0c;后续会慢慢整理。 也可找寻博主历史文章&#xff0c;搜索关键词使用方案&#xff0c;比如本文涉及函数set_slippage&#xff01; 感谢关注&#xff0c;咨询免费开通量化回测与获取实盘权限&#xff0c;欢迎和博主联系&#xff01; …

沃尔玛卖家必学:自养号测评环境搭建技巧,助你销量翻倍

沃尔玛&#xff0c;作为国际零售行业的翘楚&#xff0c;其平台的销售业绩对卖家来说意义非凡。然而&#xff0c;在现今这个充满竞争的商业环境中&#xff0c;众多卖家在沃尔玛平台上努力追求销量的过程中&#xff0c;常常面临着重重障碍和挑战。他们迫切需要在短时间内找到一种…

免费发布web APP的四个途径(Python和R)

免费发布数据分析类&#x1f310;web APP的几个途径&#x1f4f1; 数据分析类web APP目前用来部署生信工具&#xff0c;统计工具和预测模型等&#xff0c;便利快捷&#xff0c;深受大家喜爱。而一个免费的APP部署途径&#xff0c;对于开发和测试APP都是必要的。根据笔者的经验…

junams 文件上传 (CNVD-2020-24741)

漏洞环境搭建&#xff1a;vulfocus 发现这个页面后&#xff0c;通过访问IP:Port/admin.php,登录后台 通过默认用户名密码admin&#xff1a;admin进行登录 登录后台后&#xff0c;主要思路就是找到网站的文件上传点&#xff0c;然后去上传一句话木马&#xff0c;或者找到命令执…

AI大模型:GPT引领,百模征战

从 2022 年底 ChatGPT 横空出世&#xff0c;到 2023 年一整年的大模型热潮&#xff0c;在科技的巨浪中&#xff0c;大模型技术如同一颗璀璨的明星&#xff0c;迅速起并引领着一场前所未有的技术革命。大模型如同推动创新的引擎&#xff0c;将科技的边界不断拓展。 01 大模型演…

[数据集][目标检测]弹簧上料检测数据集VOC+YOLO格式142张2类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;142 标注数量(xml文件个数)&#xff1a;142 标注数量(txt文件个数)&#xff1a;142 标注类别…

自动驾驶决策规划算法——二次规划

自动驾驶决策规划算法第二章第二节(中) 参考线算法_哔哩哔哩_bilibili 动态规划开辟的凸空间如下&#xff0c;两条橙色线之间&#xff1a; 黄色的点就意味着L的上下界&#xff0c;物理意义是当轨迹ss1时&#xff0c;L的范围应该是(Lmin1,Lmax1)之间&#xff0c;这个范围就是开辟…

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教

Git是什么&#xff1f;SVN与Git最主要的区别&#xff1f;在windows上如何安装Git?如何操作&#xff1f;远程仓库创建与合并分支 一、Git是什么 Git是目前世界上最先进的分布式版本控制系统。 工作原理/流程&#xff1a; workspace&#xff1a;工作区Index/Stage&#xff1a…

Jetbrains 拥抱 LLM ,推出的AI Assistant,这样使用!

ai assistant激活成功后&#xff0c;如图 ai assistant渠道&#xff1a;https://web.52shizhan.cn/activity/ai-assistant 在去年五月份的 Google I/O 2023 上&#xff0c;Google 为 Android Studio 推出了 Studio Bot 功能&#xff0c;使用了谷歌编码基础模型 Codey,Codey 是…

3d模型旋转世界坐标输入怎么用?怎么设置?---模大狮模型网

在3D建模和动画领域&#xff0c;模型的旋转是常见的操作之一。而当我们谈到模型的旋转时&#xff0c;经常会涉及到世界坐标和局部坐标这两个概念。世界坐标是描述物体在三维空间中绝对位置的坐标系统&#xff0c;而局部坐标则是相对于物体自身坐标系的坐标系统。本文将详细介绍…

(六)Spring教程——Spring IoC容器(中)

(一)Spring教程——Spring框架简介 (二)Spring教程——Spring框架特点 (三)Spring教程——依赖注入与控制反转 (四)Spring教程——控制反转或依赖注入与Java的反射技术 (五)Spring教程——Spring IoC容器&#xff08;上&#xff09; (六)Spring教程——Spring IoC容器(中) (七)…

axios案例应用

1、Spring概述 Spring 是分层的 Java SE/EE 应用 full-stack 轻量级开源框架&#xff0c;以 IoC(Inverse Of Control: 反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核&#xff0c;提供了展现层 Spring MVC 和持久层。Spring JDBC 以及业务层事务管理等众多…

Removing Smallest Multiples

题目描述: 给你一个集合 S &#xff0c;其中包含前 n 个正整数1, 2 。 您可以对 S 执行以下操作任意次数(可能为零)&#xff1a; #include<iostream> #include<cstring> #include<algorithm> #define int long long using namespace std; int t,n,sum; bo…