如何解决if条件中'%'标记之前的预期表达式
我对只学习C语言很虔诚,而且我遇到了错误,这使我陷入了一个笑脸:-)。
int lowest() {
int c1,c2,c3,min;
printf("Type three integer numbers: ");
scanf("%d %d %d",&c1,&c2,&c3);
if ((c1 < c2) %% (c1 < c3)) { // SOMWHERE HERE IS MISTAKE
min = c1;
printf("Lowest from %d,%d,%d is %d",c1,min);
} else if ((c2 < c1) %% (c2 < c3)) {
min = c2;
printf("Lowest from %d,min);
} else {
min = c3;
printf("Lowest from %d,min);
}
}
函数在另一个主要函数中被调用。
解决方法
或者您弄错了语法,或者这是无辜的错字。无论哪种方式,错误都来自
if ((c1 < c2) %% (c1 < c3)) { // SOMWHERE HERE IS MISTAKE
具体地说,%%
不是运算符。
三个逻辑运算符的简短说明:
逻辑 AND 运算符:&&
// (7 > 0 && 6 > 0) == true
// (7 > 0 && 6 < 0) == false
如果两个条件均为true
,则返回true
。否则,它将返回false
逻辑 OR 运算符:||
// (7 > 0 || 6 > 0) == true
// (7 > 0 || 6 < 0) == true
// (7 < 0 || 6 < 0) == false
如果任一条件为true
,则返回true
。否则,它返回false。
逻辑运算符否:!
!
运算符只是反转表达式。例如,
// !true == false
// !(any true statement) == false
// !(any false statement) == true
// (!(6 < 0)) == true
// (!(6 > 0)) == false
我相信您打算使用逻辑&&
运算符。如果是这样,请更正它,并且不会再有任何错误。因此正确的表达式应该是
if ((c1 < c2) && (c1 < c3)) {
//Do something...
}
,
您可能输入了错误的%%
。 C语言中有3种运算符:
-
&&
(AND运算符) -
||
(或运算符) -
!
(非运算符)
有时候,我输入%%
而不是&&
是一个错误。请注意这些小的语法错误。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。