结构体
/*C04.L10.结构体
张其博
2024.9.19
*/
#include<bits/stdc++.h>
using namespace std;
//1.定义
/*struct 结构体名 { 成员表 //可以有多个成员成员函数 //可以有多个成员函数,也可以没有
} 结构体变量表; //可以同时定义多个结构体变量
*/
struct jiegouti(){int a;long long b;double c;char d;
}t[i];
int main()
{//赋值//结构体变量.变量名=值;t[i].a=1;//输入//cin>>结构体变量.变量名;cin>>t[i].a;//输出//cout<<结构体变量.变量名;cout<<t[i].a;return 0;
}
映射map
/*
C07.L07.STL之映射
张其博
2024.9.25
*/
#include <iostream>
#include <map>//map头文件
using namespace std;
/*定义map
格式:"map<键值类型,映射值类型> 映射名;"
*/
/*如:*/
map<int,int> a1;
map<char,int> a2;
map<string,int> a3;
map<int,char> b1;
map<char,char> b2;
map<string,char> b3;
int main()
{/*赋值*//*格式:"映射名[键值]=映射值;"*/a1[123]=123,a2['a']=456,a3["abc"]=789;/*输入*//*格式:"cin>>映射名[键值];"*/cin>>b1[123]>>b2['a']>>b3["abc"];//这里作者输入a,b,c;/*输出*//*格式:"cout<<映射名[键值];"*/cout<<"a1[123]="<<a1[123]<<" a2['a']="<<a2['a']<<" a3["<<"abc"<<"]="<<a3["abc"]<<"\n";cout<<"b1[123]="<<b1[123]<<" b2['a']="<<b2['a']<<" b3["<<"abc"<<"]="<<b3["abc"]<<"\n";cout<<"————————————————————————————————————\n";map<string,int>m1;m1["aaa"]=123456;m1["bbb"]=234567;m1["ccc"]=345678;/*迭代器*/for(auto t=m1.begin();t!=m1.end();t++){//begin()是指向map中最小元素的迭代器//end()是指向map中最大元素下一个位置的迭代器。cout<<"m1["<<t->first<<"]="<<t->second<<"\n";//"->first"是键值//"->second"是映射值}cout<<"————————————————————————————————————\n";int len=m1.size(); // 元素个数;cout<<"m1的元素个数="<<len<<"\n";m1.clear(); // 清空m1;len=m1.size();cout<<"m1的元素个数="<<len<<"\n";return 0;
}
STL之栈
/*
C07.L09.STL之栈
张其博
2024.10.10
*/
#include<bits/stdc++.h>
using namespace std;
void tt(string a){cout<<"——————————"<<a<<"——————————\n";
}
void ChuangJian() {tt("创建");//创建格式//stack<int/char/string>栈名;stack<int>t;stack<char>s;stack<string>z;cout<<"创建格式:\nstack<int/char/string>栈名;\n\n";
}void JinZhanHeChuZhan() {tt("进栈和出栈");stack<int>t;stack<char>s;stack<string>z;//进栈格式//栈名.push( );t.push(10);s.push('a');z.push("abc");//出栈格式//栈名.pop();t.pop();cout<<"进栈格式:\n栈名.push( );\n\n出栈格式:\n栈名.pop();\n\n";
}void PanDuanShiFouWeiKong() {tt("判断是否为空");stack<int>t;stack<char>s;t.push(10);//判断函数格式//栈名.empty();//1为空,0为不空cout<<"判断函数格式:\n栈名.empty();\n1为空,0为不空\n\n";cout<<t.empty()<<" "<<s.empty()<<"\n\n";}void ChangDu() {tt("获取长度");stack<int>t;t.push(10);t.push(20);t.push(30);//判断函数格式//栈名.size();cout<<"判断函数格式:\n栈名.size();\n\n";cout<<"栈t长度为:"<<t.size()<<"\n\n";
}void BianLi() {tt("遍历");stack<int>t;t.push(10);t.push(20);t.push(30);t.push(1110);t.push(13420);t.push(31230);while(!t.empty()){cout<<t.top()<<" ";t.pop();}cout<<"\n\n";
}
int main()
{ChuangJian();JinZhanHeChuZhan();PanDuanShiFouWeiKong();ChangDu();BianLi();return 0;
}