测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A32878. 统一文件名小A在命名文件的时候经常不注意大小写,格式比较混乱。现要求你写一个程序将目录下的文件统一规范的格式,即文件名的第一个字符如果是字母要大写,其他字母小写。如将Test、test整理成Test。输入第一行一个数字n,表示有n个文件名要统一,n不超过100。 接下来n行,每行一个单词,长度不超过20,表示文件的名字。文件名由字母、数字和-组成。输出n行,每行一个单词,对应统一后的文件名。样例…

填空题 较易

题目描述

统一文件名

小A在命名文件的时候经常不注意大小写,格式比较混乱。现要求你写一个程序将目录下的文件统一规范的格式,即文件名的第一个字符如果是字母要大写,其他字母小写。如将Test、test整理成Test。

输入

第一行一个数字n,表示有n个文件名要统一,n不超过100。 接下来n行,每行一个单词,长度不超过20,表示文件的名字。文件名由字母、数字和-组成。

输出

n行,每行一个单词,对应统一后的文件名。

样例输入

4
Test
data
2-TEST
problem-6

样例输出

Test
Data
2-test
Problem-6

参考答案

#include <bits/stdc++.h> using namespace std; int main() { char s[25]; int n; cin>>n; for(int i=1;i<=n;i++){ cin>>s; int ls=strlen(s); if(s[0]>='a'&&s[0]<='z') s[0]-=32; for(int j=1;j<ls;j++){ if(s[j]>='A'&&s[j]<='Z') s[j]+=32; } cout<<s<<endl; } return 0; }

答案解析

//参考答案2

#include <iostream>

#include <string>

using namespace std;

int main() {

 string s;

 int n;

 cin >> n;

 while (n--) {

   cin >> s;

if (s[0] >= 'a' && s[0] <= 'z')

     s[0] -= 32;

   int ls = s.size();

   for (int i = 1; i < ls; i++)

if (s[i] >= 'A' && s[i] <= 'Z')

       s[i] += 32;

   cout << s << endl;

 }

 return 0;

}

上一题 下一题