使用 ASCII 字符有什么技巧吗?
Any tip to use ASCII characters?
我正在使用 ASCII 字符编写程序,但在声明字符时出现错误 (CS0019)。解决此问题的任何解决方案或提示
我在声明中发现错误:
"if ((c >= 66 && c < 90 || c >= 97) && c <= 122 && c != 65 && c !=73 && c ! =85 && c !=97 && c != 101 && c != 105 && c != 111 && c != 117)"
static void Main(string[] args)
{
string text = "example.abc123";
int vowels = 0;
int consonants = 0;
int numbers = 0;
foreach (char c in text)
{
if (c >= 48 && c <= 57)
{
numbers++;
}
if (c == 65 || c == 69 || c == 73 || c == 79 || c == 85 || c == 97 || c == 101 || c == 105 || c == 111 || c == 117)
{
vowels++;
}
if ((c >= 66 && c < 90 || c >= 97) && c <= 122 && c != 65 && c !=73 && c ! =85 && c !=97 && c != 101 && c != 105 && c != 111 && c != 117)
{
consonants++;
}
问题是您的 !=
运算符之一的 !
和 =
之间有一个 space。如果将 c ! =85
替换为 c != 85
,错误将消失
仅供参考,有一种更简单的方法来检查字符是否为元音。我们可以用一个字符串来表示所有元音字母,然后检查它是否包含字符:
public static bool IsVowel(char c)
{
return "aeiouAEIOU".Contains(c);
}
我们也可以对辅音做同样的事情,或者我们可以使用 char
class 的 IsLetter
方法来判断字符是否是字母,然后重复使用我们上面的 IsVowel
方法:
public static bool IsConsonant(char c)
{
return char.IsLetter(c) && !IsVowel(c);
}
此外,char
class 有一个静态 IsDigit
方法,如果字符是数字,它将 return true
因此,结合这些,我们可以将代码简化为:
foreach (char c in text)
{
if (char.IsDigit(c)) numbers++;
else if (IsVowel(c)) vowels++;
else if (IsConsonant(c)) consonants++;
}
我正在使用 ASCII 字符编写程序,但在声明字符时出现错误 (CS0019)。解决此问题的任何解决方案或提示
我在声明中发现错误:
"if ((c >= 66 && c < 90 || c >= 97) && c <= 122 && c != 65 && c !=73 && c ! =85 && c !=97 && c != 101 && c != 105 && c != 111 && c != 117)"
static void Main(string[] args)
{
string text = "example.abc123";
int vowels = 0;
int consonants = 0;
int numbers = 0;
foreach (char c in text)
{
if (c >= 48 && c <= 57)
{
numbers++;
}
if (c == 65 || c == 69 || c == 73 || c == 79 || c == 85 || c == 97 || c == 101 || c == 105 || c == 111 || c == 117)
{
vowels++;
}
if ((c >= 66 && c < 90 || c >= 97) && c <= 122 && c != 65 && c !=73 && c ! =85 && c !=97 && c != 101 && c != 105 && c != 111 && c != 117)
{
consonants++;
}
问题是您的 !=
运算符之一的 !
和 =
之间有一个 space。如果将 c ! =85
替换为 c != 85
仅供参考,有一种更简单的方法来检查字符是否为元音。我们可以用一个字符串来表示所有元音字母,然后检查它是否包含字符:
public static bool IsVowel(char c)
{
return "aeiouAEIOU".Contains(c);
}
我们也可以对辅音做同样的事情,或者我们可以使用 char
class 的 IsLetter
方法来判断字符是否是字母,然后重复使用我们上面的 IsVowel
方法:
public static bool IsConsonant(char c)
{
return char.IsLetter(c) && !IsVowel(c);
}
此外,char
class 有一个静态 IsDigit
方法,如果字符是数字,它将 return true
因此,结合这些,我们可以将代码简化为:
foreach (char c in text)
{
if (char.IsDigit(c)) numbers++;
else if (IsVowel(c)) vowels++;
else if (IsConsonant(c)) consonants++;
}