题目链接
#include<iostream>
#include<string>
using namespace std;
char changeChar(char & a) { // 小写变大写
if (a >= 'a' && a <= 'z') a -= 32;
return a;
}
int main() {
int n;
string result, s;
cin >> n;
getchar(); // 吸收一个回车,因为输入n之后,要输入一个回车
while (n--) {
result = "";
getline(cin, s);
result += changeChar(s[0]);
for (int i = 1; i < s.size() - 1; i++) { // 单词之间可能有多个空格
if (s[i] == ' ' && s[i + 1] != ' ') result += changeChar(s[i + 1]);
}
cout << result << endl;
}
}
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNextInt()) {
int n = sc.nextInt();
sc.nextLine();
for (int i = 0; i < n; i++) {
String line = sc.nextLine().trim();
char[] arr = line.toCharArray();
StringBuilder sb = new StringBuilder();
int j = 0;
while (j < arr.length) {
if (arr[j] <= 'z' && arr[j] >= 'a') {
arr[j] = Character.toUpperCase(arr[j]);
}
sb.append(arr[j]);
while (j < arr.length && arr[j] != ' ') {
j++;
}
while (j < arr.length && arr[j] == ' ') {
j++;
}
}
System.out.println(sb.toString());
}
}
}
}
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n=in.nextInt();
in.nextLine();
for (int j = 0; j < n; j++) {
String s=in.nextLine();
StringBuilder sb=new StringBuilder();
boolean flag=true;
for (int i=0;i<s.length();i++ ){
char c=s.charAt(i);
if (flag) {
sb.append(c); //只收集首字母
flag=false;
}
if(c==' '){
while(i<s.length()&&s.charAt(i)==' '){
i++;
}
i--;//和for循环一起就多加了一次
flag=true; //表示空格读完,接下来可以收集首字母了
}
}
System.out.println(sb.toString().toUpperCase());
}
}
}
T = int(input())
for _ in range(T):
words = input().split()
abbr = ''.join(word[0].upper() for word in words)
print(abbr)
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
func main() {
var n int
_, err := fmt.Scan(&n)
if err != nil {
return
}
scanner := bufio.NewScanner(os.Stdin)
for i := 0; i < n && scanner.Scan(); i++ {
input := scanner.Text()
words := strings.Fields(input)
var res string
for _, word := range words {
res += word[:1]
}
fmt.Println(strings.ToUpper(res))
}
}