HDU 2564 词组缩写

简介: 词组缩写 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 14487    Accepted Submission(s): 4705 Problem Description 定义:一个词组中每个单词的首字母的大写组合称为该词组的缩写。

词组缩写

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 14487    Accepted Submission(s): 4705


Problem Description
定义:一个词组中每个单词的首字母的大写组合称为该词组的缩写。
比如,C语言里常用的EOF就是end of file的缩写。
 

 

Input
输入的第一行是一个整数T,表示一共有T组测试数据;
接下来有T行,每组测试数据占一行,每行有一个词组,每个词组由一个或多个单词组成;每组的单词个数不超过10个,每个单词有一个或多个大写或小写字母组成;
单词长度不超过10,由一个或多个空格分隔这些单词。
 

 

Output
请为每组测试数据输出规定的缩写,每组输出占一行。
 

 

Sample Input
1
end of file
Sample Output
EOF
Author
lemon
 

Source

分析:这道题有点小坑啊!忘记吸掉换行符,WA了一次!还要注意输出换行!
以下给出AC代码:
 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 int main()
 4 {
 5     int T;
 6     char s[200];
 7     while(cin>>T)
 8     {
 9         getchar();//要注意吸掉回车换行,本人就是这个地方卡了好久,没看出来!
10         while(T--)
11         {
12             gets(s);
13             int len=strlen(s);
14             if(s[0]>='a'&&s[0]<='z')
15             printf("%c",s[0]-32);
16             else if(s[0]>='A'&&s[0]<='Z') printf("%c",s[0]);
17             for(int i=1;s[i]!='\0';i++)
18                 {
19                     if(s[i]==' '&&(s[i+1]>='a'&&s[i+1]<='z'))
20                 printf("%c",s[i+1]-32);
21                 else if(s[i]==' '&&(s[i+1]>='A'&&s[i+1]<='Z'))
22                     printf("%c",s[i+1]);
23                 }
24                 printf("\n");
25         }
26     }
27     return 0;
28 }

 

此题出现了一种新的东西,小写字母变大写字母,有一个函数可以很方便的做这道题--strupr()函数!

strupr,函数的一种,将字符串s转换为大写形式。

说明:只转换s中出现的 小写字母,不改变其它 字符。返回指向s的 指针
兼容性说明:strupr不是标准C库函数,只能在VC中使用。在linux gcc环境下需要自行定义这个函数。
举例:
 1 // strupr.c
 2 #include <stdio.h>
 3 #include <string.h>
 4 int main()
 5 {
 6 char s[]="Copywrite 1999-2000 GGV Technologies";
 7 char* s2=strupr(s);//把s数组中的字符串转换成大写并且返回s用来初始化s2
 8 printf("%s",s2);
 9 printf("%s",s); //这个时候s和s2是相等的,指向同一个字符串。
10 // 注意:不能使用以下方式调用
11 // char* p="for test";
12 // strupr(p);
13 // 这样调用会产生异常,原因是:指针p 这里定义的是常量字串,而常量字串我们知道是不可以更改的
14 getchar();
15 return 0;
16 }


 

下面给出另外一种解法:

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<string.h>
 4 char a[120],b[120];
 5 int main()
 6 {
 7     int T;
 8     int i;
 9     int len=0;
10     int k;
11     scanf("%d",&T);
12     getchar();
13     while(T--)
14     {
15         gets(a);
16         len=strlen(a);
17         strupr(a);
18         k=0;
19         for(i=0;i<len;i++)
20         {
21             if(i==0)
22             {
23                 if(a[i]==' ' && a[i+1]!=' ')
24                      b[k++]=a[i+1];
25                 else if(a[i]!=' ')
26                     b[k++]=a[i];
27             }
28             else 
29             {
30                 if(a[i]==' ' && a[i+1])
31                     b[k++]=a[i+1];
32             }
33         }
34         for(i=0;i<k;i++)
35         {
36             if(b[i]!=' ')
37                 printf("%c",b[i]);
38         }
39         printf("\n");
40     }
41     return 0;
42 }

 

 

目录
相关文章
|
XML API 开发者
使用 API 接口获取京东商品详情全解析
京东作为头部电商平台,其商品数据极具价值。开发者可通过API接口获取商品详情、订单数据等信息,满足各种业务需求。使用前需注册账号并创建应用获取App Key和App Secret。调用流程包括认证授权、构建请求、发送请求及处理响应。注意事项包括遵守平台规则、控制调用频率和确保数据时效性。通过这些步骤,可为电商数据分析提供有力支持。
|
数据采集 Python
Python实用记录(七):通过retinaface对CASIA-WebFace人脸数据集进行清洗,并把错误图路径放入txt文档
使用RetinaFace模型对CASIA-WebFace人脸数据集进行清洗,并将无法检测到人脸的图片路径记录到txt文档中。
462 1
北极星指标是什么
北极星指标是什么
1798 0
|
安全 网络协议 算法
电脑病毒木马的清除和防范方法
电脑病毒木马的清除和防范方法
3639 0
电脑病毒木马的清除和防范方法
|
机器学习/深度学习 传感器 监控
深度学习之自动化农场管理
基于深度学习的自动化农场管理利用深度学习技术,通过对农场中的多种数据进行实时监控、分析与决策,提升农业生产的智能化水平,最终实现自动化管理。该技术涵盖作物生长监测、灌溉系统管理、病虫害检测、收割计划以及资源优化等方面,有助于提高生产效率、减少资源浪费,并增强对环境的可持续性管理。
326 1
|
机器学习/深度学习 人工智能 自然语言处理
【智能助手体验】分享一款超好用的AI工具:Kimi
Kimi是一款由月之暗面科技有限公司开发的AI助手,具备强大的自然语言理解和文件内容解析能力,支持多种文件格式,并能结合互联网搜索提供全面答案。无论是在工作中的数据分析还是日常生活中的信息查询,Kimi都能给出满意的结果,展现出巨大的应用潜力。
|
机器学习/深度学习 人工智能 自然语言处理
谷歌开源最精确自然语言解析器SyntaxNet的深度解读:一次关键进步以及一个重要工具
自然语言理解研究中,如何处理语言歧义是个难题。 SyntaxNet 将神经网络和搜索技术结合起来,在解决歧义问题上取得显著进展:SyntaxNet 能像训练有素的语言学家一样分析简单句法。今天,谷歌开源了SyntaxNet,也发布了针对英语的预训练解析程序 Parsey McParseface。除了让更多人使用到最先进的分析技术之外,这次开源举措也有利于公司借助社区力量加快解决自然语言理解难题的步伐,惠及谷歌业务。
1294 0
谷歌开源最精确自然语言解析器SyntaxNet的深度解读:一次关键进步以及一个重要工具
|
C# 开发者 UED
WPF开发者必备秘籍:深度解析文件对话框使用技巧,打开与保存文件原来如此简单!
【8月更文挑战第31天】在WPF应用开发中,文件操作是常见需求。本文详细介绍了如何利用`Microsoft.Win32`命名空间下的`OpenFileDialog`和`SaveFileDialog`类来正确实现文件打开与保存功能。通过示例代码展示了如何设置文件过滤器、初始目录等属性,并使用对话框进行文件读写操作。正确使用文件对话框能显著提升用户体验,使应用更友好易用。
742 0
|
机器学习/深度学习 数据采集 监控
深度学习之在线学习与适应
基于深度学习的在线学习与适应,旨在开发能够在不断变化的环境中实时学习和调整的模型,使其在面对新数据或新任务时能够迅速适应并维持高性能。
583 0
|
安全 网络协议 应用服务中间件
Linux OS||不响应SYN总结
背景 对外提供TCP服务的进程,在压测时发现,TCP连接SYN响应慢,甚至不响应。导致无法正常接收新的请求,影响业务。 抓包分析:  如上有大量的重传,有时能够正常的响应请求,有时就无法响应请求。
6579 0

热门文章

最新文章