笔试代码题--CVTE--全大写或全小写或首字母大写其余小写

笔试代码题--CVTE--全大写或全小写或首字母大写其余小写


实例1:输入:CVTE

             输出:True

实例2:输入:Cvte

             输出:True

实例3:输入:cvte

             输出:True

实例4:输入:CVte

             输出:False

解题思路:

     输出正确的是:  如果第一个字母是大写,那么其余的都为大写,如果第一个为小写,那么其余的为小写。

代码如下:

#include<iostream>
#include<string>
using namespace std;

bool IsBigstring(string str)
{
	int len = str.size();
	int flag = 0;
	if (len == 1) return true;
	if (str[0]>='A' && str[0]<='Z')
	{
		flag = 1;
	}
	if (flag) //如果开头是大写
	{
		if (str[1]>='A' && str[1] <= 'Z')
		{
			for (int i = 2; i < len; i++)
			{
				if (str[i] >= 'a' && str[i] <= 'z')
				{
					return false;
				}
			}
		}
		else
		{
			for (int i = 2; i < len; i++)
			{
				if (str[i] >= 'A' && str[i] <= 'Z')
				{
					return false;
				}
			}
		}
	}
	else
	{
		for (int i = 1; i < len; i++)
		{
			if (str[i] >= 'A' && str[i] <= 'Z')
			{
				return false;
			}
		}
	}
	return true;
}
int main()
{
	string s;
	cin >> s;
	if(IsBigstring(s)) 
		cout<<"true"<<endl;
	else 
		cout << "false" << endl;

	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_41103495/article/details/108655016