C ++:检查字符串的内容

用户名

抱歉,我使用的是古老的编译器

#include <iostream.h>
#include <conio.h>
#include <ctype.h>
void main()
{
   char s[6] = "mOh1t*";
   int u = 0 , l=0 , d=0 , sp=0 , t = 0;
   for (int x = 0 ; s[x] ; x++)
   {
      if (isupper(s[x]))
        u++;
      else if(islower(s[x]))
        l++;
      else if (isdigit(s[x]))
        d++;
      t++;
   }
   sp = t - (u+l+d);
   cout<<"t:"<<t;
   cout<<"u:"<<u;
   cout<<"l:"<<l;
   cout<<"d:"<<d;
   cout<<"sp:"<<sp;
   getch();
}

上面的代码清楚地计算了字符串中字母的数量(大写和小写),位数和特殊字符的数量。

我想知道是否可以 使用if语句/三元运算符/ switch case来实现相同的效果如果是,我能带头吗?

对于HoosierEE表示感谢

更新:是否可以在不使用内置函数的情况下与hoosierEE的答案相同?

-一位想学习的C ++新手

亚历克斯·施罗耶(Alex Shroyer)

如果只想避免if语句,则可以将布尔值视为0和1并像这样对字符求和:

for (int x = 0; s[x]; x++)
{
    u += isupper(s[x]);
    l += islower(s[x]);
    d += isdigit(s[x]);
    t++;
}

...但是正如@Angew提到的那样,您不能依靠这些函数将结果仅为0或1。

并回答UPDATE,这是不用stdlib函数就可以实现所需功能的方法:

for (int x = 0; s[x]; x++)
{
    u += ((s[x] >= 'A') && (s[x] <= 'Z'));
    l += ((s[x] >= 'a') && (s[x] <= 'z'));
    d += ((s[x] >= '0') && (s[x] <= '9'));
    t++;
}

您可以查找ASCII值并在其中放置数字,但是我认为使用字符文字更易读。个人喜好。

您还可以考虑对终止条件进行更严格的规定:

for (int x = 0; s[x] != '\0'; x++)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C ++:检查字符串的内容

来自分类Dev

检查字符串是否包含数字c#

来自分类Dev

以更好的方式检查字符串Null C#

来自分类Dev

检查字符串在C中的格式是否正确

来自分类Dev

检查字符串C是否是A和B的交织

来自分类Dev

如何在C中检查字符串

来自分类Dev

检查字符串是否包含数字c#

来自分类Dev

如何检查字符串是否匹配模式C

来自分类Dev

C ++检查字符串中的重复项

来自分类Dev

如何检查字符串C中的空格?

来自分类Dev

C#检查字符串是否是句子

来自分类Dev

C ++检查字符串元素是否相等

来自分类Dev

(C 语言) 检查字符串中的元音

来自分类Dev

检查字符串中的字母或空格 C#

来自分类Dev

C#检查字符串中的无效字符串

来自分类Dev

C#检查字符串中的无效字符串

来自分类Dev

C#如何检查字符串数组元素是否在字符串开头?

来自分类Dev

检查字符串是否包含其他字符串 C#

来自分类Dev

C# 检查字符串是否存在,如果存在则显示该字符串

来自分类Dev

C#检查字符串列表是否包含某些字符串

来自分类Dev

c ++ 11 regex:检查字符串中是否存在一组字符

来自分类Dev

检查字符串是否在C中仅包含空格字符

来自分类Dev

C ++检查字符串中是否仅存在以下字符

来自分类Dev

C中的正则表达式,检查字符串是否包含特定字符

来自分类Dev

C#检查字符是否按固定顺序出现在字符串中

来自分类Dev

如何在C中检查字符串中的某些字符?

来自分类Dev

C ++如何检查字符串是否以输入的字符开头

来自分类Dev

在检查字符串是否相同之前比较字符串长度是否会使C的速度增加不可忽略?

来自分类Dev

MongoDB C# 驱动程序 -> 检查字符串是否包含列表(字符串)中的元素

Related 相关文章

热门标签

归档