09 | 词组缩写问题求解
题目描述
定义:一个词组中每个单词的首字母的大写组合称为该词组的缩写。 比如,C语言里常用的EOF就是end of file的缩写。
输入
测试数据占一行,有一个词组,每个词组由一个或多个单词组成;每组的单词个数不超过10个,每个单词有一个或多个大写或小写字母组成; 单词长度不超过10,由一个或多个空格分隔这些单词。
输出
输出规定的缩写
样例
输入
end of file
输出
EOF
#include <bits/stdc++.h> using namespace std; /* 第一步:要获得每个单词的首字母 如果是第-一个字符,那么不是空格就是首字母; 如果不是第-一个字符,当前字符不是空格,且上一个(s[i-1]) 字符是空格,则是首字母 */ /* 第二步:判断,如果该字母是小写,转换为大写输出,如果是大写则直接输出 */ //判断输入的字符是否是小写,如果是大写转大写,如果是大写则不转换 char up(char c){ if(c >= 'a' && c <= 'z'){ c=c-32;//c=C-('a'-'A'); } return c; } int main(){ char s[1000];//存 储词组 int i; gets(s); //循环每个字符,判断输出首字母 for(i = 0;i < strlen(s);i++){ //如果是首字母 //如果是第一一个字符,且不是空格则是首字母 if(i==0 && s[i]!=' '){ cout<<up(s[i]); //如果不是第一一个字符,则要满足当前字符不是空格,且 上-一个字符是空格 }else if(i!=0 && s[i]!=' ' && s[i-1] == ' '){ cout<<up(s[i]); } } getchar(); getchar(); }
分类:
算法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)