C++从入门到精通 第10章 教学PPT
- 格式:ppt
- 大小:138.50 KB
- 文档页数:56
第10课 C++字符串1、基本操作--------------------------------------------------------------------- #include <iostream>#include <string>using namespace std;int main(){string s1="abcde",s2="ABCDE",s;s=s1+s2;cout<<s<<endl;cout<<s.size()<<endl;return 0;}--------------------------------------------------------------------- 2、字符串实例-大写转小写--------------------------------------------------------------------- #include <iostream>#include <string>using namespace std;int main(){string s="abcdeABCDE";for(int i=0;i<s.size();++i){if(s[i]>='A' && s[i]<='Z')s[i]=s[i]+32;}cout<<s<<endl;return 0;}--------------------------------------------------------------------- 3、倒序--------------------------------------------------------------------- #include <iostream>#include <string>using namespace std;int main(){string s("当周围变得寂静无声的时候,你就是高手了!");string s1;s1=s;for(int i=0;i<s.size();++i)s1[i]=s[s.size()-i-1];cout<<s1<<endl;return 0;}--------------------------------------------------------------------- 4、变码--------------------------------------------------------------------- #include <iostream>#include <string>using namespace std;int main(){string s("µ±ÖÜΧ±äµÃ¼Å¾²ÎÞÉùµÄʱºò£¬Äã¾ÍÊǸßÊÖÁË£¡");string s1;s1=s;for(int i=0;i<s.size();++i)s1[i]=s[i]+5;cout<<s1<<endl;return 0;}--------------------------------------------------------------------- 5、查找子串位置--------------------------------------------------------------------- #include <iostream>#include <string>using namespace std;int main(){string s="abcde";string s1="cd";int n;n=s.find(s1,0);cout<<n<<endl;return 0;}--------------------------------------------------------------------- 6、查找并替换子串---------------------------------------------------------------------#include <iostream>#include <string>using namespace std;int main(){string s="abÁõ¶«Ã÷cde";string s1="Áõ¶«Ã÷";int n;cout<<s<<endl;n=s.find(s1,0);s.replace(n,s1.size(),"ÇúÒÕ");cout<<s<<endl;return 0;}--------------------------------------------------------------------- 7、查找并删除子串--------------------------------------------------------------------- #include <iostream>#include <string>using namespace std;int main(){string s="ab刘东明cde";string s1="刘东明";int n;cout<<s<<endl;n=s.find(s1,0);s.erase(n,s1.size());cout<<s<<endl;return 0;}--------------------------------------------------------------------- 8、查找并取出子串--------------------------------------------------------------------- #include <iostream>#include <string>using namespace std;int main(){string s="ab刘东明cde";string s1="刘东明";string s2;int n;cout<<s<<endl;n=s.find(s1,0);s2=s.substr(n,s1.size());cout<<s2<<endl;return 0;}--------------------------------------------------------------------- 9、实例-算式解析--------------------------------------------------------------------- #include <iostream>#include <string>#include <sstream>using namespace std;int str2num(string s){int n;stringstream ss;ss<<s;ss>>n;return n;}int main(){string s="1+2",s1,s2;int n1,n2;n1=s.find("+",0);n2=n1+1;s1=s.substr(0,n1);s2=s.substr(n2,s.size()-n2);cout<<s1<<endl;cout<<s2<<endl;cout<<str2num(s1)+str2num(s2)<<endl;return 0;}--------------------------------------------------------------------- 10、实例-英汉词典解析---------------------------------------------------------------------#include <iostream>#include <string>#include <sstream>using namespace std;int main(){string s="ability n.能力",s1,s2;int n1,n2;n1=s.find(" ",0);n2=n1;while(true){++n2;if(s.substr(n2,1)!=" ")break;}s1=s.substr(0,n1);s2=s.substr(n2,s.size()-n2);cout<<s1<<endl;cout<<s2<<endl;return 0;}--------------------------------------------------------------------- 11、演示:单串数据库-学生成绩管理系统(实验准备)--------------------------------------------------------------------- 程序:略。