zoukankan      html  css  js  c++  java
  • 华为笔试——C++转换字符串问题

    题目:转换字符串

    题目介绍:

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

    例:

    输入:

    abcd1234

    输出:

    ac13

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

    代码:

     1 #include <iostream>
     2 #include <string>
     3 #include <conio.h>
     4 using namespace std;
     5 int main()
     6 {
     7     char c;
     8     int count = 0;
     9     int size = 20;
    10     int i;
    11     char *password = new char[size];
    12     string str;
    13     while ((c = _getch()) != '
    ') {
    14         if (count >= size - 1) {
    15             cout << "Error!" << endl;
    16             continue;
    17         }
    18         if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9')) {  // 密码只可包含数字和字母
    19             cout << c;
    20             password[count] = c;
    21             count++;
    22         }
    23     }
    24     password[count] = '';
    25     cout << endl;
    26     for (i = 0; i < count; i++)
    27     {
    28         if (i % 2 == 0)
    29         {
    30             cout << password[i];
    31         }
    32     }
    33     return 0;
    34 }

    结果如下图:

  • 相关阅读:
    数据仓库的一些理解(转)
    常见ETL工具一览,你知多少?
    dhcpv6开源软件配置
    svn
    js原型模式
    combo扩展:禁止手工改变输入框的值
    SQLite错误总结 error code 19: constraint failed
    ntp源码解读(一)
    ntp-keygen.c
    6.2.2认证
  • 原文地址:https://www.cnblogs.com/ljy1227476113/p/9606759.html
Copyright © 2011-2022 走看看