Csharp/C#教程:运算符’&&’不能应用于’bool’和’int’类型的操作数分享


运算符’&&’不能应用于’bool’和’int’类型的操作数

我有一个if elseif语句来检查标记并根据条件对标记进行评分。

int marks; string grade; if (marks>=80 && marks!>100) { grade = "A1"; } else if (marks>=70 && marks!>79) { grade = "A2"; } 

等等…..

但是,当我编译它时,我得到了

运算符’&&’不能应用于’bool’和’int’类型的操作数

帮我修好它。谢谢你提前。

其他答案让人们知道主要问题是!>不是运营商。

我想建议,既然您正在测试marks是否在特定范围内,那么您需要采取进一步的步骤来格式化条件表达式以使用以下模式:

 if (80 <= marks && marks <= 100) { grade = "A1"; } else if (70 <= marks && marks <= 79) { grade = "A2"; } 

这是一个简单而且可能微妙的变化,但我认为这使得范围检查意图更加清晰。

那不是一个真正的运营商:

 !> 

不大于<= (小于或等于)

编辑:你想说的话实际上也可以用!来表达! 运营商。 但它会

 !(marks > 100 ) 

你使用了错误的操作员,

肯定是。

 int marks; string grade; if (marks>=80 && marks<=100) { grade = "A1"; } elseif (marks>=70 && marks<=79) { grade = "A2"; } 

你也可以这样做

上述就是C#学习教程:运算符’&&’不能应用于’bool’和’int’类型的操作数分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注---计算机技术网(www.ctvol.com)!

 int marks; string grade; if (marks>=80 && !(marks>100)) { grade = "A1"; } elseif (marks>=70 && !(marks>79)) { grade = "A2"; } 

 int marks; string grade; if ((marks>=80) && !(marks > 100)) { grade = "A1"; } else if ((marks>=70) && !(marks > 79)) { grade = "A2"; } 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/988963.html

(0)
上一篇 2021年12月23日
下一篇 2021年12月23日

精彩推荐