驼峰命名法
目录
1、概念
骆驼式命名法就是当变量名或函数名是由一个或多个单词连结在一起,而构成的唯一识别字时,第一个单词以小写字母开始;从第二个单词开始以后的每个单词的首字母都采用大写字母,例如:myFirstName、myLastName,这样的变量名看上去就像骆驼峰一样此起彼伏,故得名。
骆驼式命名法(Camel-Case)一词来自 Perl 语言中普遍使用的大小写混合格式,而 Larry Wall 等人所著的畅销书《Programming Perl》(O'Reilly 出版)的封面图片正是一匹骆驼。
骆驼式命名法的命名规则可视为一种惯例,并无绝对与强制,为的是增加识别和可读性。
2、小驼峰法
变量一般用小驼峰法标识。驼峰法的意思是:除第一个单词之外,其他单词首字母大写。譬如
int myStudentCount;
变量myStudentCount第一个单词是全部小写,后面的单词首字母大写。
常用于函数名。
3、大驼峰法
相比小驼峰法,大驼峰法(即帕斯卡命名法)把第一个单词的首字母也大写了。常用于类名,属性,命名空间等。譬如
public class DataBaseUser;
题目描述:驼腚命名法
链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
众所周知,驼峰命名法是一种程序员广泛使用的变量命名方式。本题中的驼峰命名法定义如下:当变量名或函数名是由一个或多个单词连结在一起构成的唯一识别字时,每个单词的首字母都采用大写字母。如 MyName,MyAge\texttt{MyName}, \texttt{MyAge}MyName,MyAge。
卷王杨神则根据驼峰命名法发明了新的驼腚命名法,与驼峰命名法唯一不同的是,它的每个单词的末尾字母都采用大写字母,如 mYnamE, mYagE\texttt{mYnamE, mYagE}mYnamE, mYagE。
由于蒟蒻 jbgg 非常膜拜杨神,他想写一个将驼峰命名法转成驼腚命名法的程序,但 jbgg 对编程一窍不通,所以他来向你求助了!你能帮帮 jbgg 吗?
输入描述:
链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
第一行一个正整数 T(1⩽T⩽2×105)T(1 \leqslant T \leqslant 2 \times 10^5)T(1⩽T⩽2×105),表示有 TTT 组数据。
接下来 TTT 行,每行一个字符串 sss。
保证所有的字符串 sss 中仅包含大写和小写英文字母,且首个字符为大写字母。
1⩽∑∣s∣⩽2×105 其中 |s| 为字符串 sss 的长度。
输出描述:
应输出 T 行。对于每组数据输出一行符合驼腚命名法格式的字符串。
输入样例
样例1
2
CrazyThursdayVMeFifty
DoNotPlayOverwatch
样例2
2
OOOOOHhhhhhhh
LEEROYJEEEEEEENKIIIIIIIIIIIIIIINS
输出样例:
样例1
crazYthursdaYVmEfiftY
dOnoTplaYoverwatcH
样例2
2
OOOOOHhhhhhhh
LEEROYJEEEEEEENKIIIIIIIIIIIIIIINS
题解
#include <stdio.h>
#include <string.h>
int main()
{
int T;
scanf("%d", &T);
getchar();
for (int i = 0; i < T; i++)
{
char s[200000];
scanf("%s",s);
for (int j = 0; j <=strlen(s); j++)
{
if ((s[j] >= 'a' && s[j] <= 'z') && (s[j + 1] >= 'A' && s[j + 1] <= 'Z'))
{
s[j] = s[j] - 32;
}
else if ((s[j] >= 'A' && s[j] <= 'Z') && (s[j + 1] >= 'A' && s[j + 1] <= 'Z'))
{
;
}
else if ((s[j] >= 'A' && s[j] <= 'Z') && (s[j + 1] >= 'a' && s[j + 1] <= 'z'))
{
s[j] = s[j] + 32;
}
}
if (s[strlen(s)-1] >= 'a' && s[strlen(s)-1] <= 'z')
s[strlen(s)-1] = s[strlen(s)-1] - 32;
printf("%s\n",s);
}
return 0;
}