现在还不会定义。能不能讲下?
追答说白了就是一对互斥量。逻辑型变量只有两个值,0或者1,一般用来指引程序分支。也就是“不对”和“对”产生不同的程序运行方向。比如说我要给100分制的成绩进行ABCD的分级。那就要对成绩进行判断,grade>90是A,grade>80是B依次类推。伪代码如下:
if(grade>90)输出("成绩为A");
else if(grade>80)输出("成绩为B");
......
上面的伪代码里,grade>90和grade>80是条件判别式,条件判别式的值就是一个逻辑变量。假如当前grade=95。那么grade>90就是“对”的,也就是grade>90=true(在Java中)或者在C语言中grade>90=1。如果我给出一个逻辑变量的声明bool argv;那么我给它赋值有两种方式:
argv=3>2;这种方式的真实情况是:if(3>2)argv=1;(或argv=true;)
argv=1;(或者argv=true)
也就是说,逻辑变量就是一个条件判别式的结果。而条件判别式只能有两种结果,对或者不对。这就像一个开关只能有开或者关两种状态一样。你把逻辑型变量当成一个两状态开关就行了。
给你举两个例子吧
作为函数返回值,表示函数执行结果
bool isInt(){
bool result=false;
//中间各种判断
return result
}
作为条件使用
bool flag = true;
//中间各种判断
if(flag){
.....
}
书后面有解释吗?
式子看不懂
追答书里肯定有介绍的,应该是先讲的数据类型,然后运算符,之后。。。。
追问你就讲下为什么用bool吧
它为什么不用输入?又没有给它们赋值
追答bool是说这个变量的类型是bool型的,也就是逻辑型变量
你给的图中对变量赋值了
a=score>=60; //意思是说a=(score>=60),即a等于逻辑表达式score>=60的值,如果score大于等于60,a=true,否则a=false
那为什么不用浮点型或整型
追答逻辑变量就是两个值,true和false,逻辑表达式score>=60的结果就是逻辑值,逻辑判断自然要用逻辑变量
浮点型或整型类型都不对应
明白了。
源码长这个样子?
追答肯定不是啊,源码就是书里写的那样a=score>=60
追问对啊
那怎么弄啊
追答什么怎么弄啊,我都不知道你现在又是什么问题
追问饿,最后一问
什么问题啊,你截的图看不清,请只截代码,旁边没用就别截了吧,也可以帖代码啊
追问#include
#include
int main()
{
long double a,b,c,d;
scanf ("%lf%lf%lf%lf",a,b,c,d);
long double s;
s=sqrt(((int)(b>a))&((c++)*(d--)));//表达式必须具有整数或未区分范围的枚举类型
printf("%lf\n",s);
return 0;
}