驼腚命名法

驼峰命名法

目录

驼峰命名法

1、概念

2、小驼峰法

3、大驼峰法

题目描述:驼腚命名法


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;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

熟人看不到

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值