首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >提示用户输入首字母缩写程序字符串

提示用户输入首字母缩写程序字符串
EN

Stack Overflow用户
提问于 2015-08-27 03:34:19
回答 1查看 1.7K关注 0票数 1

程序提示用户输入一个短语,然后根据单词创建一个首字母缩略词。与有大写字母的传统缩略词不同,字母的大小写保持不变。如果我进入市政厅是旧的,我应该得到TTHio。如何使用isspace来确保我的程序正常运行,因为如果相邻有多个空格,它不会组合字符?它也不能处理标签。

代码语言:javascript
复制
#include "stdafx.h"
#include <iostream> 
#include <string> 
#include <cctype> 
using namespace std; 
string create_acronym(string str); 
int main()
{
    cout << "This program tests the acronym function." << "\n"; 
    while (true)
    {
        cout << "\nPlease enter a string: "; 
        string str; 
        getline(cin, str); 
        if (str == "") 
        {
            break; 
        }
        cout << "\n\nThe acronym is \"" << create_acronym(str) << "\"" << "\n";
    } 
    return 0;
}
string create_acronym(string str) 
{
    string acronym = "";
    acronym = str.at(0); 
    for (int i = 0; i < str.length(); i++)
    {
        if (str.at(i) == ' ') 
        {
            acronym += str.at(i+1); 
        }
    }
    return acronym; 
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-27 03:40:22

请记住,您需要输出下一个非空间:

代码语言:javascript
复制
string create_acronym( const string & str ) 
{
    string acronym;
    bool use_next = true;        

    for ( char c : str )
    {
        bool space = isspace(c);
        if ( use_next && !space ) acronym += c;
        use_next = space;
    }
    return acronym; 
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32240254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档