这是回音你懂吗

  • [1072] 这是回音你懂吗

  • 时间限制: 1000 ms 内存限制: 65535 K
  • 问题描述
  • 这题很简单,按照样例输入输出的格式制造回音。
  • 输入
  • 本题包含多组数据。每组数据一行,仅包含中文文字、英文大小写字母以及数字。
  • 输出
  • 对于每组数据输出其回音,直到消失。一个回音一行,末尾附带尾巴"~"。
  • 样例输入
  • 这是回音你懂吗a
  • 样例输出
  • 这是回音你懂吗a~
    是回音你懂吗a~
    回音你懂吗a~
    音你懂吗a~
    你懂吗a~
    懂吗a~
    吗a~
    a~
    
  • 提示
  • 来源
  • XadillaX
  • 操作
  •        


Tips:将字符串从第i位输出,只需要输出s + i

代码:

#include"cstdio"
#include"cstring"
#include"iostream"

using namespace std;

char s[20005];

int main()
{
    while(cin >> s)
    {
        int len = strlen(s);
        for(int i = 0;i < len;)
        {
            cout << s+i; //将字符串从第i位输出
            cout << "~" << endl;
            if(s[i] >= '0' && s[i] <= '9') //之前没注意引号wrong了一次
            {
                i++;
            }
            else if(isalpha(s[i])) //直接判断s[i] <= 'Z' && s[i] >= 'A' || s[i] <= 'z' && s[i] >= 'a'会快一些
            {
                i++;
            }
            else
            {
                i += 2;
            }
        }
    }
    return 0;
}


你可能感兴趣的:(水题)