使用 C++ 检测给定字符串中的大写
假设我们有一个字符串“str”,其中包含一些字符。任务是检查给定字符串的所有字符是否大写,并分别返回True或False。例如,
输入1-
str = “INDIA”
输出-
True
说明-由于输入字符串的所有字符都是大写,在这种情况下我们将返回true。
输入2-
str = “Programmer”
输出-
False
说明-由于输入字符串的所有字符除了第一个字母外都不是大写的,在这种情况下我们将返回false。
用来解决这个问题的方法
在给定的字符串中,我们必须检查输入字符串的所有字符是否都大写。因此,我们将遍历字符串的每个字符,并检查它是否大于'A'且小于'Z'。
如果条件为真,那么我们将增加计数器。然后,我们将继续前进并再次检查计数器的大小是否与字符串的长度相同,然后返回true,否则返回false。
输入字符串“str”
布尔函数checkCapital(strings)将字符串作为输入,如果字符串的所有字符都大写,则返回true。
取一个计数器变量并将其初始化为零。
迭代字符串并检查当前字符是否在“A”到“Z”的范围内,如果条件为真,则增加计数器变量。
现在检查计数器与字符串的大小相同,并相应地返回True/False。
如果计数器为0或字符串有一个大写字符,则返回true。
示例
#includeusing namespace std; bool checkCapital(string s){ int counter=0; int loc=i; for(int i=0;i ='A' && s[i]<= 'Z'){ counter++; loc=i; } } if(counter==s.size() || counter==0 ||(counter==1 && loc==0)) return true; return false; } int main(){ string str= "INDIA"; bool ans= checkCapital(str); if(ans){ cout<<"True"< 输出结果 运行上面的代码将生成输出,
True由于输入字符串'INDIA'包含所有字符大写,我们得到输出为“True”。