【C/C++笔试练习】DNS设置文件、应用层、Dos攻击、DNS服务、DNS、子网划分、http状态、路由设置、TCP连接、HTTP状态码、剪花布条、客似云来

本文主要是介绍【C/C++笔试练习】DNS设置文件、应用层、Dos攻击、DNS服务、DNS、子网划分、http状态、路由设置、TCP连接、HTTP状态码、剪花布条、客似云来,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • C/C++笔试练习
  • 选择部分
    • (1)DNS设置文件
    • (2)应用层
    • (3)Dos攻击
    • (4)DNS服务
    • (5)DNS
    • (6)子网划分
    • (7)http状态
    • (8)路由设置
    • (9)TCP连接
    • (10)HTTP状态码
  • 编程题 day33
    • 剪花布条
    • 客似云来

C/C++笔试练习

选择部分

(1)DNS设置文件

  /etc/resolv.conf的用途是

  A.邮件服务的设置文件
  B.DHCP的设置文件
  C.DNS解析的设置文件
  D.网络路由的设置文件

  答案:C

在这里插入图片描述

  

(2)应用层

  能够PING通同网段的节点,但却如PING不通其他网段的所有节点的最可能的原因()

  A.本机网关设置错误
  B.本机没有正确设置DNS
  C.对方运行的是不同的操作系统
  D.二层交换机故障

  答案:A

  A:ping是TCP/IP协议族的一部分,使用ICMP协议,ICMP底层使用IP协议。主要是用来检测网络是否通畅。如果要ping其他网段,则需要设置网关。

  B:和DNS没有关系,DNS设置错会影响访问公网服务器的域名,而不会影响内部子设备是否ping通。

  C:ping命令是跨操作系统的,windows主机能够ping通Linux主机。

  D:二层交换机如果出现故障那么同网段主机则不会ping通。

  

(3)Dos攻击

  常被提及的Dos攻击的是以下的行为()

  A.侵入目标服务器,获取重要数据
  B.采用穷举的方式获得登录账号
  C.发送无效的请求,使得正确的请求无法被响应
  D.利用微软DOS从操作系统图的各种漏洞达到攻击的目的

  答案:C

  Dos攻击被称之为“拒绝服务攻击”,其目的是使计算机或网络无法提供正常的服务。最常见的DoS攻击有计算机网络宽带攻击和连通性攻击。

  Dos攻击中并不包括侵入目标服务器或目标网络设备。

  Dos是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源。

  

(4)DNS服务

  以下不是DNS服务的作用的是()

  A.将主机名翻译到指定的IP地址
  B.将IP地址反解成主机名
  C.解析特定类型的服务的地址,如MX,NS
  D.将IP解析成MAC地址

  答案:D

  D选项:IP地址解析成为MAC地址,这个是ARP协议, 并且ARP协议是向子网内主机进行广播ARP请求,目标主机收到之后,回复ARP应答。

  

(5)DNS

  在小红书公司的局域网中,署队长的私人电脑可以查看到的同事的电脑,也成功了登录了QQ,但无法访问到公司的站点"http://www.xiaohongshu.com”,请协助署队长查找最有可能出现的问题的地方是()

  A.UDP
  B.DHCP
  C.DNS
  D.HTTP

  答案:C

  1.可以在私网当中查看到同事的电脑,说明在局域网内通信没有问题。

  2.能成功登录QQ,说明访问QQ服务器没有问题,换言之,访问外网(互联网)是通的。

  3.但是访问不了一个特定的域名,所以,问题出在了域名转换成为ip的过程,所以,出问题的点在于DNS。

  

(6)子网划分

  将一个C类网络划分20个子网,最适合的子网掩码是多少()

  A.255.255.255.240
  B. 255.255.255.248
  C.255.255.255.252
  D.255.255.255.255

  答案:B

  A类网络默认的子网掩码: 255.0.0.0

  B类网络默认的子网掩码:255.255.0.0

  C类网络默认的子网掩码: 255.255.255.0

  2 ^ 4<20<2 ^ 5
  如果划分20个子网,需要把子网掩码向后在使用5个比特位
  255.255.255.xxxxx000,即255.255.255.11111000

  11111000是二进制,将它转换成十进制是(0x2^ 0)+(0x2^ 1)+(0x2^ 2)+(1x2^ 3)+(1x2^ 4)+(1x2^ 5)+(1x2^ 6)+(1x2^ 7)=0+0+0+8+16+32+64+128=248所以子网掩码是255.255.255.248

  

(7)http状态

  以下哪种http状态下,浏览器会产生两次http请求()

  A.400
  B. 404
  C.302
  D.304

  答案:C

  302:临时性重定向(请求的资源被分配了新的URL,希望本次访问使用新的URL);由服务端告知浏览器资源在那个新的URL上,浏览器接收到应答后,则直接反问新的URL,所以,会产生两次HTTP请求

  304:客户端发送附带条件请求时,请求满足条件的情况下,服务器端允许访问资源并返回改状态码;

  400:请求报文中存在语法错误;

  404:服务器上无法找到请求资源,

  

(8)路由设置

  局域网的网络地址192.168.1.0/24,局域网络连接其他网络的网关地址是192.168.1.1。主机192.168.1.20访问172.16.1.0/24网络时,其路由设置正确的是()

  A. route add default 192.168.1.0 netmask 172.16.1.1 metric 1
  B. route add -net 172.16.1.0 gw 192.168.1.1 netmask 255.255.255.0 metric 1
  C. route add -net 192.168.1.0 gw 192.168.1.1 netmask 255.255.255.0 metric 1
  D. route add-net 172.16.1.0 gw 172.16.1.1 netmask 255.255.255.0 metric 1

  答案:B

  (1)路由信息组成部分:1.目的主机的网络地址 2.下一个跳转的地址 3.子网掩码

  (2)-net后面跟的是目标网络,gw就是gateway(网关入口),表示从哪个网关到哪个目标网络

  所以, 如题,因为主机要访问172.16.1.0/24网络,那么目标网络就是172.16.1.0/24。

  因此-net后面跟的就是172.16.1.0/24.排除AC选项。

  因为gw表示网关入口,那么gw后面跟的就是网关地址,即192.168.1.1.因此选B。

  

(9)TCP连接

  建立一条TCP连接需要()个步骤,关闭一个TCP连接需要()个步骤

  A.4,3
  B. 4,4
  C.3,4
  D.3,3

  答案:C

在这里插入图片描述

  

(10)HTTP状态码

  以下关于HTTP状态码的描述,错误的是()

  A.100,代表客户端应当继续发送请求
  B. 2xx,代表请求已成功被服务器接收、理解、并接受
  C.301,代表被请求的资源已永久移动到新位置,用于重定向
  D.4xx,代表服务器在处理请求的过程中有错误或者异常状态发生

  答案:D

在这里插入图片描述

            

编程题 day33

剪花布条

剪花布条

  C语言可以通过strstr函数找,用STL的string库可以通过find函数找,找到以后跳过一个T串的长度。例如:在abcacbcbcabscbc中找cbc,第一次找到了这个位置:abcacbcbcabscbc,找到这个下标后,会跳过整体cbc,也就是从这个位置继续找:abcacbcbcabscbc,否则如果你只跳一个字符,会导致cbcbc会被算成2次,而按照本题的题意,应该算一次。

#include <iostream>
#include <cstdio>
#include <string>
using namespace std;int cut(string s, string t) 
{int i = s.find(t);if (i == string::npos) {return 0;}return 1 + cut(s.substr(i + t.size()), t);
}int main() 
{string s, t;while (cin >> s >> t) {int ans = cut(s, t);printf("%d\n", ans);}
}

  

客似云来

客似云来

  老样子,先准备好斐波那契的数组,然后遍历那一段数组,求出他们的和即可。而第80项斐波那契数列是一个17位数,所以需要用long long来解决问题。

  然而这个题还有另一个更有意思的思路。斐波那契数列的的前n项和其实是有一个很有意思的公式,公式推导在这里https://blog.csdn.net/ftx456789/article/details/82348742,根据文章我们能知道,斐波那契数列的前n项和,就是第n+2项的值减1,例如前10项的和143,就是第12项的144 - 1的结果。所以,我们如果我们要第n项到第m项的和,那么只要求出前m项的和,减去前n - 1项的和,就能得到结果了。例如要求第3项到第5项的和,我们就只需要用前5项的和减去前2项的和,而公式中的减一在这个过程中抵消掉了,也就是结果直接就是第7项的值减去第4项的值,这样我们在操作的时候就更简单了。就数值而言,第7项是13,第4项是3,差值是10,而2+3+5也是10,结果是正确的。

#include <iostream>
#include <cstdio>
using namespace std;int main() 
{long long fib[80];fib[0] = 1;fib[1] = 1;for (int i = 2; i < 80; i++) {fib[i] = fib[i - 1] + fib[i - 2];}int from, to;while (cin >> from >> to) {long long count = 0;for (int i = from - 1; i <= to - 1; ++i) {count += fib[i];}printf("%lld\n", count);}
}

            

这篇关于【C/C++笔试练习】DNS设置文件、应用层、Dos攻击、DNS服务、DNS、子网划分、http状态、路由设置、TCP连接、HTTP状态码、剪花布条、客似云来的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/981086

相关文章

W外链微信推广短连接怎么做?

制作微信推广链接的难点分析 一、内容创作难度 制作微信推广链接时,首先需要创作有吸引力的内容。这不仅要求内容本身有趣、有价值,还要能够激起人们的分享欲望。对于许多企业和个人来说,尤其是那些缺乏创意和写作能力的人来说,这是制作微信推广链接的一大难点。 二、精准定位难度 微信用户群体庞大,不同用户的需求和兴趣各异。因此,制作推广链接时需要精准定位目标受众,以便更有效地吸引他们点击并分享链接

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

【C++ Primer Plus习题】13.4

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: main.cpp #include <iostream>#include "port.h"int main() {Port p1;Port p2("Abc", "Bcc", 30);std::cout <<

hdu1565(状态压缩)

本人第一道ac的状态压缩dp,这题的数据非常水,很容易过 题意:在n*n的矩阵中选数字使得不存在任意两个数字相邻,求最大值 解题思路: 一、因为在1<<20中有很多状态是无效的,所以第一步是选择有效状态,存到cnt[]数组中 二、dp[i][j]表示到第i行的状态cnt[j]所能得到的最大值,状态转移方程dp[i][j] = max(dp[i][j],dp[i-1][k]) ,其中k满足c

C++包装器

包装器 在 C++ 中,“包装器”通常指的是一种设计模式或编程技巧,用于封装其他代码或对象,使其更易于使用、管理或扩展。包装器的概念在编程中非常普遍,可以用于函数、类、库等多个方面。下面是几个常见的 “包装器” 类型: 1. 函数包装器 函数包装器用于封装一个或多个函数,使其接口更统一或更便于调用。例如,std::function 是一个通用的函数包装器,它可以存储任意可调用对象(函数、函数

C++11第三弹:lambda表达式 | 新的类功能 | 模板的可变参数

🌈个人主页: 南桥几晴秋 🌈C++专栏: 南桥谈C++ 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据库学习专栏: 南桥谈MySQL 🌈Qt学习专栏: 南桥谈Qt 🌈菜鸡代码练习: 练习随想记录 🌈git学习: 南桥谈Git 🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈🌈�

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

06 C++Lambda表达式

lambda表达式的定义 没有显式模版形参的lambda表达式 [捕获] 前属性 (形参列表) 说明符 异常 后属性 尾随类型 约束 {函数体} 有显式模版形参的lambda表达式 [捕获] <模版形参> 模版约束 前属性 (形参列表) 说明符 异常 后属性 尾随类型 约束 {函数体} 含义 捕获:包含零个或者多个捕获符的逗号分隔列表 模板形参:用于泛型lambda提供个模板形参的名