一个小程序测试题
//输入一字符串:如char str[]=”You4456&**are0%$&()(__+great!”,
//将其中的非字母字符去掉后,转换成大写,然后倒序输出。
//即输出”TAERGERAUOY”。
#include<iostream.h>
#include<math.h>
#include<string.h>
//删除非字母
char * Delete(char *s,int len )
{
for(int i=0;i<len;i++)
{
char a;
a=s[i];
if (!((a>='a'&&a<='z')||(a>='A'&&a<='Z')))
{
for(int j=i;j<len;j++)
{
s[j]=s[j+1];
}
i--;
len--;
}
}
return s;
}
小写变大写
char * Transform(char *s,int len)
{
for(int i=0;i<len;i++)
{
char a;
a=s[i];
if (a>='a'&&a<='z')
{
s[i]=a-32;
}
}
return s;
}
主函数///
void main()
{
char s[1000];
cout<<"输入字符串"<<endl;
cin>>s;
int len=strlen(s);
cout<<len<<endl;
char *s1;
s1=Delete(s,len);
int len1=strlen(s1);
for(int n=0;n<len1;n++)
{
cout<<s1[n];
}
cout<<endl;
//倒叙输出
char *s2;
s2=Transform(s1,len1);
int len2=strlen(s1);
for(int m=len2-1;m>=0;m--)
{
cout<<s2[m];
}
}