华为笔试——C++转换字符串问题

题目:转换字符串

题目介绍:

将输入字符串中下标为偶数的字符连成一个新的字符串输出,需要注意两点: 
1. 如果输入字符串的长度超过20,则转换失败,返回“ERROR!”字符串; 
2. 输入字符串只能由0-9数字,小写a-z和大写A-Z组成,如果包含其他字符,则转换失败,返回“ERROR!”字符串。

例:

输入:

abcd1234

输出:

ac13

分析:这道题相对来说比较简单,用char字符串类型实现即可。

代码:

 #include <iostream>
#include <string>
#include <conio.h>
using namespace std;
int main()
{
char c;
int count = ;
int size = ;
int i;
char *password = new char[size];
string str;
while ((c = _getch()) != '\r') {
if (count >= size - ) {
cout << "Error!" << endl;
continue;
}
if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '' && c <= '')) { // 密码只可包含数字和字母
cout << c;
password[count] = c;
count++;
}
}
password[count] = '\0';
cout << endl;
for (i = ; i < count; i++)
{
if (i % == )
{
cout << password[i];
}
}
return ;
}

结果如下图:

华为笔试——C++转换字符串问题

上一篇:fir.im Weekly - 2017 年必须了解的 iOS 开源库


下一篇:windows 2012 r2下安装sharepoint 2013错误解决