用C/C++编程实现strlen,strcmp,strcpy,substr,strrev,strcat字符串处理函数的功能
急用请高手帮忙编程实现strlen,strcmp,strcpy,substr,strrev,strcat字符串处理函数的功能;2.以菜单的形式选择相应的字符串处理函数执行...
急用请高手帮忙
编程实现strlen,strcmp,strcpy,substr,strrev,strcat字符串处理函数的功能;
2.以菜单的形式选择相应的字符串处理函数执行相关的功能;
3.较好的界面设计 展开
编程实现strlen,strcmp,strcpy,substr,strrev,strcat字符串处理函数的功能;
2.以菜单的形式选择相应的字符串处理函数执行相关的功能;
3.较好的界面设计 展开
2个回答
展开全部
#include <iostream.h>
#include <string.h>
#include <stdio.h>
void main()
{
cout<<"********************************************************************************"<<endl;
cout<<" 字符处理函数功能"<<endl;
cout<<"1.strlen计算字符串的长度"<<endl;
cout<<"2.strcmp两个字符串的比较"<<endl;
cout<<"3.strcpy把后面的字符串复制在第一个的后面"<<endl;
cout<<"4.strcat把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'"<<endl;
cout<<"5.substr返回一个从指定位置开始,并具有指定长度的子字符串。 "<<endl;
cout<<"6.strrev把字符串s的所有字符的顺序颠倒过来"<<endl;
cout<<"********************************************************************************"<<endl;
char selection;
do
{
char option;
cout<<"请选择你要的功能: ";
cin>>option;
for(int i=0;option!='1'&&option!='2'&&option!='3'&&option!='4'&&option!='5'&&option!='6';i++)
{
cout<<"错误的输入,请重新输入"<<endl;
cin>>option;
}
char a[200],b[200];
if(option=='1')
{
cout<<"请输入字符串,限制为200个字符"<<endl;
gets(a);
cout<<"该字符串的长度为 "<<strlen(a)<<endl;
}
else if(option=='2')
{
int count=0;
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
cout<<"请输入字符串B,限制为200个字符"<<endl;
gets(b);
int length_a,length_b;
length_a=strlen(a);
length_b=strlen(b);
for(i=0;i<length_a;i++)
{
for(int j=0;j<length_b;j++)
{
if(a[i]==b[j])
{
count++;
}
}
}
if(count!=0)
{cout<<"有"<<count<<"个字符相同"<<endl;}
else
{cout<<"没有相等的字符"<<endl;}
}
else if(option=='3')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
int length_a;
length_a=strlen(a);
strcpy(b,a);
cout<<"字符串B的结果为 ";
for(i=0;i<length_a;i++)
{
cout<<b[i];
}
}
else if(option=='4')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
cout<<"请输入字符串B,限制为200个字符"<<endl;
gets(b);
strcat(a,b);
cout<<"结果为 "<<a<<endl;
}
else if(option=='5')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
int n1,n2,length_a;
gets(a);
length_a=strlen(a);
cout<<"请输入指定位置: ";
cin>>n1;
cout<<"请输入输出长度: ";
cin>>n2;
for(i=0;n1<=0||n1>length_a||n2>length_a;i++)
{
cout<<"输入数据错误,请重新输入 "<<endl;
cin>>n1>>n2;
}
cout<<"结果为: ";
for(i=n1;i<=n2;i++)
{
cout<<a[i-1];
}
}
else if(option=='6')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
int length_a=strlen(a);
strrev(a);
cout<<"结果为:";
for(i=0;i<length_a;i++)
{
cout<<a[i];
}
}
cout<<"你要继续吗,输入Y或者y继续,输入其他结束";
cin>>selection;
}while(selection=='y'||selection=='Y');
}
//其中功能2和功能5我没有用到要求的函数,但是也能实现其功能,如果楼主想改的话,就自己改吧.也不是太难的
#include <string.h>
#include <stdio.h>
void main()
{
cout<<"********************************************************************************"<<endl;
cout<<" 字符处理函数功能"<<endl;
cout<<"1.strlen计算字符串的长度"<<endl;
cout<<"2.strcmp两个字符串的比较"<<endl;
cout<<"3.strcpy把后面的字符串复制在第一个的后面"<<endl;
cout<<"4.strcat把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'"<<endl;
cout<<"5.substr返回一个从指定位置开始,并具有指定长度的子字符串。 "<<endl;
cout<<"6.strrev把字符串s的所有字符的顺序颠倒过来"<<endl;
cout<<"********************************************************************************"<<endl;
char selection;
do
{
char option;
cout<<"请选择你要的功能: ";
cin>>option;
for(int i=0;option!='1'&&option!='2'&&option!='3'&&option!='4'&&option!='5'&&option!='6';i++)
{
cout<<"错误的输入,请重新输入"<<endl;
cin>>option;
}
char a[200],b[200];
if(option=='1')
{
cout<<"请输入字符串,限制为200个字符"<<endl;
gets(a);
cout<<"该字符串的长度为 "<<strlen(a)<<endl;
}
else if(option=='2')
{
int count=0;
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
cout<<"请输入字符串B,限制为200个字符"<<endl;
gets(b);
int length_a,length_b;
length_a=strlen(a);
length_b=strlen(b);
for(i=0;i<length_a;i++)
{
for(int j=0;j<length_b;j++)
{
if(a[i]==b[j])
{
count++;
}
}
}
if(count!=0)
{cout<<"有"<<count<<"个字符相同"<<endl;}
else
{cout<<"没有相等的字符"<<endl;}
}
else if(option=='3')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
int length_a;
length_a=strlen(a);
strcpy(b,a);
cout<<"字符串B的结果为 ";
for(i=0;i<length_a;i++)
{
cout<<b[i];
}
}
else if(option=='4')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
cout<<"请输入字符串B,限制为200个字符"<<endl;
gets(b);
strcat(a,b);
cout<<"结果为 "<<a<<endl;
}
else if(option=='5')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
int n1,n2,length_a;
gets(a);
length_a=strlen(a);
cout<<"请输入指定位置: ";
cin>>n1;
cout<<"请输入输出长度: ";
cin>>n2;
for(i=0;n1<=0||n1>length_a||n2>length_a;i++)
{
cout<<"输入数据错误,请重新输入 "<<endl;
cin>>n1>>n2;
}
cout<<"结果为: ";
for(i=n1;i<=n2;i++)
{
cout<<a[i-1];
}
}
else if(option=='6')
{
cout<<"请输入字符串A,限制为200个字符"<<endl;
gets(a);
int length_a=strlen(a);
strrev(a);
cout<<"结果为:";
for(i=0;i<length_a;i++)
{
cout<<a[i];
}
}
cout<<"你要继续吗,输入Y或者y继续,输入其他结束";
cin>>selection;
}while(selection=='y'||selection=='Y');
}
//其中功能2和功能5我没有用到要求的函数,但是也能实现其功能,如果楼主想改的话,就自己改吧.也不是太难的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询