利用容器实现字符串的权值
来源:互联网 发布:js图片热点区域 编辑:程序博客网 时间:2024/05/17 02:26
#include <iostream>
using namespace std;
#include <list>
#include <map>
#include <vector>
#include <fstream>
void getValue(vector<char> &vecc,vector<int> &veci)
{
// int j;
// char c[2];
char cTemp;
int iTemp;
ifstream infile1,infile2;//定义文件输出类
infile1.open("file1.txt");
infile2.open("file2.txt");
for (int i=0; i<26; i++) {
infile1>>cTemp;
vecc.push_back(cTemp);
//c[0] = cTemp;
infile2>>iTemp;
veci.push_back(iTemp);
//j = iTemp;
}
infile1.close();
infile2.close();
}
int serch(char c)
{
//int j;//记录下标
vector<char> vecc;
vector<int> veci;
getValue(vecc, veci);
map<char, int>maplive;
for (int i=0;i<vecc.size() ; i++) {
maplive.insert(pair<char, int>(vecc.at(i),veci.at(i)));
} //键值对存在map中
//补充一个空格的map
maplive.insert(pair<char, int>(' ',0));
map<char,int>::iterator l_it;
l_it = maplive.find(c);
return l_it->second;
// return ;
}
int main(int argc, const char * argv[])
{
char num[26] = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
int val[26];
for (int i=0; i<26; i++) {
val[i] = i+1;
}
//将数据存储到文件中
ofstream onfile1,onfile2;//定义输出文件(将数据写入到文件中)
onfile1.open("file1.txt");//打开一个输入文件file1用来保存26个英文字母
onfile2.open("file2.txt");//保存1-26数字
for (int i=0; i<26; i++) {
onfile1<<num[i]<<' ';
onfile2<<val[i]<<' ';
}
onfile1.close();
onfile2.close();
char f1[10];
do {
int sum=0;
char s[50];
string ss;
cout<<"请输入要计算的字符串"<<endl;
cin.getline(s, 40);
char *p = s;
int j=strlen(p);
for (int i=0; i<j; i++){
sum+=serch(s[i]);
}
cout<<s<<":"<<sum<<"%"<<endl;
cout<<"您还要继续计算吗?(Y/N)";
//cin>>f>>f;
cin.getline(f1,10);
}while('Y' == f1[0]);
cout<<"欢迎使用!谢谢!"<<endl;
return 0;
}
- 利用容器实现字符串的权值
- 利用容器map配合pair实现字符串中字符的计数
- 利用容器来拆分字符串
- MSSQL利用表值函数实现字符串的分隔
- Hibernate中,利用Criteria查询容器实现sql的写法
- Hibernate中,利用Criteria查询容器实现sql的写法
- Docker: 利用Linux容器实现可移植的应用部署
- 利用STL容器stack实现一个简单的计算器
- 利用STL算法高效实现容器的循环移位
- 利用EXCEL 实现字符串的计算
- 利用API 实现字符串表达式的计算
- 利用API 实现 字符串的镜像
- 利用EXCEL 实现字符串的计算
- 利用API 实现字符串表达式的计算
- 利用栈实现字符串的四则运算
- 利用递归的方法实现字符串倒序
- 利用ES6中的模板字符串轻松实现多行和字符串值的插入
- 利用map容器中统计文件中相同字符串的个数
- Android源码中增加模块
- asp实现语音上传
- POJ2342:Anniversary party(树形DP)
- C#基础——类型转换
- 使用FTP出现的3种常见错误
- 利用容器实现字符串的权值
- mvc与三层架构不得不说的秘密
- vlc的应用之九:用vlc串流摄像头
- 用VBS代码实现简单的场景恢复实例
- Square_hdu_1518(深搜)
- vector
- 中国不承认国际驾驶证
- 查看数据库及表信息
- Mac 上运行Apache/MySQL/PHP