1.头文件 :#include<map>
2.定义:map<int,string>student / /int 为索引条件 string为int指向的值
3.输出 cout<<student[xxx]<<endl;
3.大小:student.size();
4.输入scanf("%s",student[i]);
5.map.find(string),寻找map容器中的这个字符串的值,找不到就返回map.end();
6.map.clear(),清空map容器
1.根据学学号来找学生姓名
#include <map>
#include <string>
#include<stdio.h>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
while(scanf("%d",&n)!=EOF)
{
int i;
map <int,string>student;
for(i=0;i<n;i++)
{
char b[10];
int c;
scanf("%s",b);
student[i]=b;
}
map<int,string>::iterator iter;
iter=student.begin();
for(i=0;i<n;i++)
{
cout<<student[i]<<endl;
}
cout<<student.size()<<endl;
}
return 0;
}
2.根据学生姓名来找学号(姓名重复会覆盖掉之前的学号)#include <map>
#include <string>
#include<stdio.h>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
while(scanf("%d",&n)!=EOF)
{
int i;
map <string,int>student;
for(i=0;i<n;i++)
{
char b[10];
int c;
scanf("%s",b);
student[b]=i;
}
char findx[100];
scanf("%s",findx);
printf("%d\n",student[findx]);
cout<<student.size()<<endl;
}
return 0;
}
这里写的map很浅 只适合了解