C++相关实验练习

C++面向对象实验

C++对C的扩充

一、实验目的

1.掌握C++程序的基本格式与规范,学会编写简单的C++程序。

2.理解C++程序结构的特点。

3.熟悉C++程序基本的输入输出操作。

4.掌握C++数据类型常量和变量以及修饰符的使用方法。

5.掌握函数定义、函数调用和函数说明的方法。

6.熟悉作用域运算符的功能和基本使用方法。

7.掌握C++内存的动态分配和释放方法。

8.理解引用的概念,掌握引用的使用方法。

二、实验任务

1.编写一个简单程序,输出“Welcome you”,并给程序加一行注释“First C++ program”。

2.编制一个完整的包含输入与输出的简单C++程序。(只要一个主函数即可)

3.编制内置函数求解2X2+4X+5的值,X为整数,并用主函数调用该函数。

4.利用函数重载,重载上面的函数,X为浮点数。

5.编写一个C++程序,对—个整数数组求和,求和的结果使用全局变量sum存储,同时对整数中的奇数求和,结果使用局部变量sum存储,在主程序中将两个结果输出。本题要求体会和理解作用域运算符的概念与基本使用方法。

三、实验步骤

实验任务一:

#include <iostream>
using namespace std;
int main()
{cout<<"Welcome you";//First C++ programreturn 0; 
}

实验任务二:

#include <iostream>
#include <vector>//超int范围整数反转 
using namespace std;
int main()
{string a;cin>>a;vector<int> A;for(int i = a.size()-1;i >= 0;i -- )A.push_back(a[i]-'0');while(A.size()>1&&A.back()==0)A.pop_back();//去掉反转后前导零 for(int i = 0;i < a.size();i ++ )printf("%d",A[i]);return 0; 
}

实验任务三:

主函数:

主函数:
#include <iostream>
using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int getans(int x);
int main() {int x;cin>>x;int y=getans(x);cout<<y<<endl; return 0;
}
求解函数:
int getans(int x)
{int ans;ans=2*x*x+4*x+5;return ans;
}

实验项目四:

主函数:

主函数:
#include <iostream>
using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop */
double getans(double x);
int main() {double x;cin>>x;double y=getans(x);cout<<y<<endl; return 0;
}
项目下求解函数:
double getans(double x)
{double ans;ans=2*x*x+4*x+5;return ans;
}

实验项目五:

#include <iostream>
using namespace std;
int a[10]={0,1,2,3,4,5,6,7,8,9};
int sum=0;//全局变量 
int main()
{int sum = 0;//main函数当中的局部变量 for(int i = 0;i <= 9;i ++ ){::sum+=a[i];//::代表着全局变量累计所有数组数值求和 }cout<<::sum<<endl;for(int i = 0;i <= 9;i ++ ){if(a[i]&1)sum+=a[i];//局部变量奇数和 }cout<<sum<<endl;
}

C++新特性

一、实验目的

  1. 理解C++提供的新的特性
  2. 掌握引用的含义
  3. 掌握const修饰的含义
  4. 初步掌握模板的作用
  5. 初步掌握new/delete的作用
  6. 掌握string的使用方法

二、实验任务

  1. 设计一个函数,使用new开辟10个整型大小的空间,输入10个整数,然后将输入的10个数排序输出,输出之后,使用delete将开辟的空间删除。
  2. 将上题中的函数模板化,要求可以接受输入10个浮点数,或10个字符串排序。
  3. 设计一个函数,能将输入的字符串倒置。例入输入的是“LIGHT”,输出“THGIL”。
  4. 设计一个函数int& count(char c),作用为统计一个字符串当中所有字符出现的个数(只考虑英文26个字符),比如在字符串“abcadad”中,字符a出现了3次,而字符b、c出现了1次,字符d出现了2次。其他的字符出现了0次。(提示,使count函数返回引用)。

三、实验步骤

#include <iostream>
#include <algorithm>
using namespace std;
void quick_sort(int q[],int l,int r)//快速排序
{if(l>=r)return;int x=q[l+r>>1],i=l-1,j=r+1;while(i<j){do i++;while(q[i]<x);do j--;while(q[j]>x);if(i<j)swap(q[i],q[j]);}quick_sort(q,l,j);quick_sort(q,j+1,r);
}
int main()
{new int[10];int *p=new int[10];for(int i = 0;i < 10;i ++ )cin>>p[i];quick_sort(p,0,10);//快排for(int i = 0;i < 10;i ++ )cout<<p[i]<<" ";delete [] p;return 0;
}
#include <iostream>
#include <algorithm>
using namespace std;
template <class T>
void deal()
{new T[10];T *p=new T[10];for(int i = 0;i < 10;i ++ )cin>>p[i];sort(p+0,p+10);for(int i = 0;i < 10;i ++ )cout<<p[i]<<" ";delete [] p;
}
int main()
{deal<double>();//double类型数据//deal<string>();或者字符串类型数据皆可使用模板 return 0;
}
#include <iostream>
#include <vector>//动态数组反向存储并输出
using namespace std;
void reverse(string a)
{vector<char> A;for(int i = a.size()-1;i >= 0;i -- )A.push_back(a[i]);for(int i = 0;i < A.size();i ++ )cout<<A[i];
}
int main()
{string a;getline(cin,a);reverse(a);return 0;
}
方法二:
#include <iostream>//双指针算法 
using namespace std;
int main()
{string a;getline(cin,a);for(int i = 0,j = a.size()-1;i<j;i ++ ,j -- ){if(i<j)swap(a[i],a[j]);}for(int i = 0;i < a.size();i ++ ){cout<<a[i];}return 0;
}
方法三:
#include <iostream>//STL库 
#include <algorithm>
using namespace std;
int main()
{string a;getline(cin,a);reverse(a.begin(),a.end());for(int i = 0;i < a.size();i ++ )cout<<a[i];return 0;
}
#include <iostream>
using namespace std;
const int N = 1000000+10;
int A[N]={0}; 
string a;
int &count(char c)
{return A[(c-'a')];
}
int main()
{getline(cin,a);for(int i = 0;i < a.size();i ++ ){ if(a[i]>='a'&&a[i]<='z'){count(a[i])++;}}for(int i = 0;i <= 25;i ++ ){if(A[i]!=0){char o=i+'a';cout<<o<<":"<<A[i]<<endl;}}return 0;
}

类与对象(一)

一、实验目的

  1. 理解类和对象的概念,掌握类的定义和对象的使用方法,理解成员的访问权限。
  2. 掌握成员函数的定义与使用方法。

二、实验任务

  1. 定义一个关于日期的类,然后声明对象,判断该日期是否为闰年并输出。
  2. 设计一个学生类,完成输入/输出的功能,要求:(1)其属性有:学号、姓名、pu专业、班级、性别、成绩等;(2)成员函数要实现信息的录入和显示。
  3. 在完成一个学生类的基础之上,设置一个教师类,要求:(1)有教师的工号、姓名、所教授课程的名字(最多3门课程)以及该教师所指导的学生。(2)成员函数实现教师信息的录入;(3)打印出教师的相关信息以及该教师所指导的学生的相关信息。

三、实验步骤

#include <iostream>
using namespace std;
class Date
{private:int year;int month;int day;public:void setdata(){cout<<"请输入年份:";cin>>year;cout<<"请输入月份:";cin>>month;cout<<"请输入天数:";cin>>day; }bool leap(){if((year%4==0&&year%100!=0)||(year%400==0)){return true;}else return false;}
};
int main()
{Date time;time.setdata();if(time.leap())cout<<"此年数为闰年"<<endl;else cout<<"此年份不是闰年"<<endl;return 0; 
}
#include <iostream>
#include <iomanip>
using namespace std;
class student
{private:string num;string name;string zhuanye;string banji;string sex;double score;public:void setdata(){cout<<"请输入学生学号:";//202110900000 cin>>num;cout<<"请输入学生姓名:";//朱奕锦 cin>>name;cout<<"请输入学生专业:";//计算机与技术 cin>>zhuanye;cout<<"请输入学生班级:";//2142cin>>banji;cout<<"请输入学生性别:";//男 cin>>sex; cout<<"请输入学生成绩:";//99.99,浮点数并保留两位小数 cin>>score;     }void dispaly(){cout<<name<<"的信息如下所示"<<endl; cout<<"学生学号:"<<num<<endl;cout<<"学生姓名:"<<name<<endl;cout<<"学生专业:"<<zhuanye<<endl;cout<<"学生班级:"<<banji<<endl;cout<<"学生性别:"<<sex<<endl;cout<<"学生成绩:"<<setiosflags(ios::fixed)<<setprecision(2)<<score<<endl;}
};
int main()
{student zyj;zyj.setdata();zyj.dispaly();return 0;
}
#include <iostream>
#include <iomanip>
using namespace std;
class student
{private:string num;string name;string zhuanye;string banji;string sex;double score;public:void setdata(){cout<<"请输入学生学号:";//202110900000cin>>num;cout<<"请输入学生姓名:";//朱奕锦 cin>>name;cout<<"请输入学生专业:";//计算机与技术 cin>>zhuanye;cout<<"请输入学生班级:";//2142cin>>banji;cout<<"请输入学生性别:";//男 cin>>sex; cout<<"请输入学生成绩:";//99.99,浮点数并保留两位小数 cin>>score;     }void display(){cout<<name<<"的信息如下所示"<<endl; cout<<"学生学号:"<<num<<endl;cout<<"学生姓名:"<<name<<endl;cout<<"学生专业:"<<zhuanye<<endl;cout<<"学生班级:"<<banji<<endl;cout<<"学生性别:"<<sex<<endl;cout<<"学生成绩:"<<setiosflags(ios::fixed)<<setprecision(2)<<score<<endl;}
};
class teacher
{private:string num;string name;string text;student stu[3];//假设黄老师带了3个学生 public:void setdata(){cout<<"请输入教师工号:";cin>>num;cout<<"请输入教师姓名:"; cin>>name;cout<<"请输入教师所教授课程的名字:";cin>>text;cout<<"请输入教师所指导学生的名字以及信息:";cout<<endl;//调换行无实际意义仅仅为了好看for(int i = 0;i < 3;i ++ ){stu[i].setdata();}} void dispaly(){cout<<name<<"的信息如下所示:"<<endl; cout<<"教师工号:"<<num<<endl;cout<<"教师姓名:" <<name<<endl;cout<<"教师所教授课程的名字:"<<text<<endl;cout<<"教师所指导学生的信息:";cout<<endl;//调换行无实际意义仅仅为了好看for(int i = 0;i < 3;i ++ ){stu[i].display();cout<<endl;} }
};
int main()
{teacher zzg;zzg.setdata();cout<<endl;//调换行无实际意义仅仅为了好看 zzg.dispaly();return 0;
}

类与对象(二)

一、实验目的

  1. 掌握对象成员的引用;

  2. 理解类的封装和信息的隐藏

二、实验任务

  1. 定义一个rectangle的类,然后声明对象,完成:

(a)用对象名和成员运算符(.)访问对象成员

(b)用指向对象的指针访问对象成员

  1. 设计rectangle类,完成类声明和成员函数定义的分离,实现公用接口与私有实现的分离。

三、实验步骤

#include <iostream>
using namespace std;
class rectangle
{private:void cicum();//私有实现 void area();//私有实现 public:int lenth;int wide;rectangle(int a=6,int b=6):lenth(a),wide(b){}//参数表构造函数赋初值 void display(); 
};
int main()
{//用.来访问类中的成员 rectangle item1; cout<<"此时为未输入数据时构造函数默认初始化的长为6宽为6的情况:" <<endl;item1.display();//公用接口 cout<<"此时为输入数据时的长为8宽为8的情况:"<<endl;item1.lenth=8;item1.wide=8;cout<<"-----------------------------------------------------"<<endl; //用指针针来访问类中的成员rectangle item2; rectangle *p=&item2;cout<<"此时为未输入数据时构造函数默认初始化的长为6宽为6的情况:" <<endl;p->display();//公用接口 cout<<"此时为输入数据时的长为8宽为8的情况:"<<endl;p->lenth=8;p->wide=8; return 0;
}
inline void rectangle::cicum()//在类外定义类的内置函数 
{cout<<"该长方形的周长是:"<<(lenth+wide)*2<<endl; 
}
inline void rectangle::area()//在类外定义类的内置函数
{cout<<"该长方形的面积是:"<<lenth*wide<<endl; 
}
inline void rectangle::display()//在类外定义类的内置函数
{cicum();area();
}

第一次电子作业

函数

一、实验目的

  1. 掌握函数的定义和调用方法。
  2. 掌握函数实参和形参间的值传递关系。
  3. 掌握重载函数的使用。
  4. 掌握函数调用时,形参、实参之间的“值传递”和“地址传递”的区别。
  5. 掌握函数递归调用的方法。

二、实验内容

  1. 编写函数判断一个数是否是素数,在主程序中实现输入、输出。可设置带默认形参值为203。
  2. 给定某个年、月、日的值,例如,2005年7月11日,计算出这一天属于该年的第几天,要求写出计算闰年的函数和计算日期的函数。
  3. 求出2~100之间的完全数。所谓完全数,是指除了自身之外,其所有因子之和是其自身的数,如:6是一个完全数,因为其因子是:1, 2, 3,而1+2+3 = 6.

实现代码

1.
函数参数的默认值就是说在声明函数或者定义函数的时候直接在参数后给赋值,这样在函数调用的时候调用方可以不用再给传值,它会默认使用它的默认值
#include <iostream>
#include <cmath>
using namespace std;
bool prime(int x=203)
{if(x==1)return false;if(x==2)return true;else{for(int i = 2;i <= sqrt(x);i ++ ){if(x%i==0)return false;}}return true;
} 
int main()
{int n;cin>>n;if(prime(n))cout<<"Yes";else cout<<"No";return 0;
}
2.
#include <iostream>
#include <cmath>
using namespace std;
int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
int b[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
bool leap(int year)
{if((year%4==0&&year%100!=0)||(year%400==0))return true;else return false;
} 
int getday(int year,int month,int day)
{int sum=0;if(leap(year)){for(int i = 1;i < month;i ++ )sum+=a[i];}else{for(int i = 1;i < month;i ++ )sum+=b[i];}sum=sum+day;return sum;
}
int main()
{int year,month,day;cin>>year>>month>>day;cout<<getday(year,month,day);return 0;
}
3.
#include <iostream>
using namespace std;
bool judge(int n)
{int sum=0;for(int i = 1;i < n;i ++ ){if(n%i==0)sum+=i;}if(sum==n)return true;else return false;
}
int main()
{for(int i = 2;i <= 100;i ++ ){if(judge(i))cout<<i<<" ";}return 0;
}

第二次电子作业

一、实验内容

1.要求:求一个长方柱的体积,请编写一个基于对象的程序,数据成员包括length(长)、width(宽)、height(高)。要求用成员函数实现以下功能:

(1)由键盘输入一个长方柱的长、宽、高;

(2)计算一个长方柱的体积;

(3)输出一个长方柱的体积。

2.定义一个学生类,其中有3个数据成员有学号、姓名、年龄,以及若干成员函数。同时编写主函数使用这个类,实现对学生数据的赋值和输出。要求:

(1)使用成员函数实现对输出的输入、输出

(2)使用构造函数和析构函数实现对数据的输入、输出。

3.定义日期类型Date。要求有以下面成员:

(1)可以设置日期;

(2)日期加一天操作;

(3)输出函数,输出格式为“XXXX年XX月XX日”。

4.Distance类就是组合类,可以计算两个点的距离,它包含了Point类的两个对象p1和p2,实现:(1)录入两点p1、p2基本信息;

(2)实现两点距离的计算并输出基本信息。

二、实现代码

1.
#include <iostream>
#include <iomanip>
using namespace std;
class cft
{private:double length;double width;double height;double V;public:void input()//输入数据 {cin>>length>>width>>height;}void calv()//计算体积 {V=length*width*height;}void output()//输出体积 {cout<<setiosflags(ios::fixed)<<setprecision(2)<<V<<endl;}
};
int main()
{cft n;n.input();n.calv();n.output();return 0;
}2.
#include <iostream>
using namespace std;
class Student
{private:string num;string name;string sex;public:Student(string,string,string);//构造函数赋初值 ~Student()//析构函数执行末尾指令 {cout<<num<<" "<<name<<" "<<sex<<endl; }
};
Student::Student(string a,string b,string c)
{num=a;name=b;sex=c;
}
int main()
{Student("202110913226","朱奕锦","男"); Student("202110913140","吴星","女"); Student("202110913205","王嘉隆","男");
}3.
#include <iostream>
#include <iomanip>
using namespace std;
class Date
{private:int year;int month;int day;public:void setdata(){cin>>year>>month>>day;}void add1(){day++;if((year%4==0&&year%100!=0)||(year%400==0)) {if(month==2)//闰年2月进位 {if(day==30){day=1;month=3;}}if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)//31天月份进位 {if(day==32){day=1;month++;if(month==13)//年份进位 {month=1;year++;}}}if(month==4||month==6||month==9||month==11)//30天月份进位 {if(day==31){day=1;month++;if(month==13)//年份进位 {month=1;year++;}}}}else//非闰年 {if(month==2)//二月进位 {if(day==29){day=1;month=3;}}if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)//31天月份进位 {if(day==32){day=1;month++;if(month==13){month=1;	year++;}}}if(month==4||month==6||month==9||month==11)//30天月份进位 {if(day==31){day=1;month++;if(month==13){month=1;year++;}}}}}void output(){printf("%4d年%02d月%02d日",year,month,day);//格式化输出 }
};
int main()
{Date n;n.setdata();n.add1();n.output();return 0;
}4.
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
class Point
{private:double x;double y;public:void setdata(){cin>>x>>y;}int getx(){return x;}int gety(){return y;}
};
class Distance
{private:Point a;Point b;int x1,y1,x2,y2;public:void input(){cout<<"请输入a点的坐标:"; a.setdata();cout<<"请输入b点的坐标:"; b.setdata();x1=a.getx();y1=a.gety();x2=b.getx();y2=b.gety();}void output(){cout<<"两点之间的距离为:"<<setiosflags(ios::fixed)<<setprecision(2)<<sqrt(pow(x1-x2,2)+pow(y1-y2,2))<<endl;}void outputpointdata(){cout<<"a点的数据为:"<<setiosflags(ios::fixed)<<setprecision(2)<<"("<<x1<<","<<y1<<")"<<endl;cout<<"b点的数据为:"<<setiosflags(ios::fixed)<<setprecision(2)<<"("<<x2<<","<<y2<<")"<<endl;} 
};
int main()
{Distance s;s.input();s.output();s.outputpointdata();return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

5. CSS引入方式

5.1 CSS的三种样式 按照 CSS 样式书写的位置(或者引入的方式)&#xff0c;CSS样式表可以分为三大类&#xff1a; 1.行内样式表&#xff08;行内式&#xff09; 2.内部样式表&#xff08;嵌入式&#xff09; 3. 外部样式表&#xff08;链接式&#xff09; 5.2 内部样式表 …

开源平台Kubernetes的优势是什么?

Kubernetes 是一个可移植、可扩展的开源平台&#xff0c;用于管理容器化的工作负载和服务&#xff0c;方便进行声明式配置和自动化。Kubernetes 拥有一个庞大且快速增长的生态系统&#xff0c;其服务、支持和工具的使用范围广泛。 Kubernetes 这个名字源于希腊语&#xff0c;意…

web系统漏洞攻击靶场

摘 要 互联网极速发展的同时&#xff0c;也会带来一些安全性的风险&#xff0c;一些不为人知的安全问题也逐渐暴露出来。近年来&#xff0c;媒体不断披露了许多网络安全事故&#xff0c;许多网络应用程序被黑客攻击&#xff0c;导致内部数据外泄&#xff0c;人们开始认识到网络…

QPainter,QPen,QBrush详解

QPainter:画家 QPen:画笔&#xff0c;控制图形的边框轮廓 QBrush:画刷&#xff0c;控制图形的填充颜色样式 下面是用用QGraphicsItem来重写paint事件举例 #include <QGraphicsItem> #include <QPainter> #include <QGraphicsScene> #include <QGraphicsV…

C语言 扫雷程序设计

目录 1.main函数 2.菜单打印menu函数 3.游戏game函数 4.宏定义 5.界面初始化 6.打印界面 7.设置雷 8.统计排查坐标周围雷的个数 9.排查雷 10.总代码 test.c代码 game.h代码 game.c代码 结语&#xff1a; 一个简单的扫雷游戏&#xff0c;通过宏定义可以修改行列的…

第30天:Web开发-PHP应用组件框架前端模版渲染三方插件富文本编辑器CVE审计

#知识点 1、安全开发-原生PHP-开发组件集合 2、安全开发-原生PHP-模版引擎渲染 3、安全开发-原生PHP-第三方编辑器 组件/框架 说明 [Web框架] Laravel 现代化、功能全面的框架&#xff0c;适合大多数Web应用。 Symfony 高度模块化、功能强大的框架&#xff0c;适合复杂…

解决ESP32 wifi scan:1. 获取WIFI扫描列表个数为0 的问题 2.扫描WIFI列表时导致程序崩溃问题。

1. 获取WIFI扫描列表个数为0 的问题 参考ESP32的wifi scan例子&#xff0c;出问题的程序源码&#xff1a; 分析原因&#xff1a; 查看esp_wifi.c的源码&#xff0c;我们会发现&#xff1a; 上面意思就是但调用esp_wifi_scan_get_ap_records获取AP列表后&#xff0c;将会…

【动态重建】时间高斯分层的长体积视频

标题&#xff1a;Representing Long Volumetric Video with Temporal Gaussian Hierarchy 来源&#xff1a;浙江大学 链接&#xff1a;https://zju3dv.github.io/longvolcap/ 文章目录 摘要一、前言二、主要方法2.1 时间高斯分层2.2 高效渲染2.3 层次结构更新2.4 紧凑的外观模型…

mongodb==安装prisma连接

官网下载mongodb,解压安装 Download MongoDB Community Server | MongoDB 修改bin/mongod.cfg # mongod.conf# for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data. storage:dbPat…

conda安装及demo:SadTalker实现图片+音频生成高质量视频

1.安装conda 下载各个版本地址&#xff1a;https://repo.anaconda.com/archive/ win10版本&#xff1a; Anaconda3-2023.03-1-Windows-x86_64 linux版本&#xff1a; Anaconda3-2023.03-1-Linux-x86_64 Windows安装 环境变量 conda -V2.配置conda镜像源 安装pip conda…

TDengine + MQTT :车联网时序数据库如何高效接入

现代新能源汽车&#xff0c;作为一种内部系统极为复杂的交通工具&#xff0c;配备了大量传感器、导航设备、应用软件&#xff0c;这些传感器产生的数据都需要上报到车联网平台当中。对于这些车辆的状态数据&#xff08;如车速、发动机转速等&#xff09;、位置数据&#xff08;…

LabVIEW瞬变电磁接收系统

利用LabVIEW软件与USB4432采集卡开发瞬变电磁接收系统。系统通过改进硬件配置与软件编程&#xff0c;解决了传统仪器在信噪比低和抗干扰能力差的问题&#xff0c;实现了高精度的数据采集和处理&#xff0c;特别适用于地质勘探等领域。 ​ 项目背景&#xff1a; 瞬变电磁法是探…

【读书与思考】历史是一个好东西

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】【读书与思考】 导言 以后《AI日记》专栏我想专注于 AI 相关的学习、成长和工作等。而与 AI 无关的一些读书、思考和闲聊&#xff0c;我打算写到这里&#xff0c;我会尽量控制自己少想和少写。 下图的一些感想…

网络层协议之IP数据包层分片随笔

1.全篇内容均在图中&#xff0c;如何分片以及分片举例细节拆解&#xff0c;见下图: 1.1分片公式&#xff1a; 上述公式中有关/8 再*8目的是为了使用8字节对齐&#xff0c;从而使的分片数据包均为8字节整数倍&#xff01; 1.2.ip层数据包分片计算&图解

Python爬虫基础——认识网页结构(各种标签的使用)

1、添加<div>标签的代码定义了两个区块的宽度和高度均为100px&#xff0c;边框的格式也相同&#xff0c;只是区块中显示的内容不同&#xff1b; 2、添加<ul>和<ol>标签分别用于定义无序列表和有序列表。<il>标签位于<ul>标签或<ol>标签之…

牛客网刷题 ——C语言初阶(6指针)——字符逆序

1. 题目描述&#xff1a;字符逆序 牛客网题目链接 将一个字符串str的内容颠倒过来&#xff0c;并输出。 输入描述: 输入一个字符串&#xff0c;可以有空格 输出描述: 输出逆序的字符串 示例1 输入 I am a student 输出 tneduts a ma I 2. 思路 首先字符串逆序&#xff0c;之…

安徽省乡镇界面图层+arcgis数据shp格式-乡镇名称和编码2020年+wgs84坐标内容测评

最新安徽省乡镇界面图层arcgis数据shp格式-乡镇名称和编码2020年wgs84坐标无偏移

Telephony Netd

1、Linux补充知识 iptables iptables是Linux防火墙系统的重要组成部分,iptables的主要功能是实现对网络数据包进出设备及转发的控制。当数据包需要进入设备、从设备中流出或者由该设备转发、路由时,都可以使用iptables进行控制。 Netlink Netlink套接字是用以实现用户进程与内…

HashMap总结使用+原理+面试

文章目录 1.Hashmap的基本使用创建hashmap对象。遍历hashmap统计字母出现的次数用来投票计算返回JSON数据 2.hashmap源码阅读put源码阅读 3. HashMap 面试题目hashmap实现的原理什么时候数组需要进行扩容hashmap怎么确定把数据放到那个节点的哪个位置。为什么用 n - 1 与运算&a…

SpringMVC(四)响应

目录 数据处理及跳转 1. 结果跳转方式 ①.ModelAndView ②.ServletAPI 1、通过HttpServletResponse进行输出 2、通过HttpServletResponse实现请求转发 3、通过HttpServletResponse实现重定向 ③.SpringMVC 1.直接输出 2.请求转发 3.重定向 2.ResponseBody响应json数…