关于if else语句

d1=a+b>c && b==c
d2=a||b+c&&b-c
d3=!(a>b) && !c || 1
d4=!(x=a) && (y=b) && 0
d5=!(a+b)+c-1&&b+c/2
d6=!10
编程计算以上各表达式,运用if语句(用if … else if … else 结构)实现:如果d1d6中有任意一个值为“真”则输出“至少有一个逻辑表达式的值为真!”,如果d1d6都是“真”则输出“所有逻辑表达式的值都为真!”,否则输出“至少有一个逻辑表达式的值是假!”,然后输出换行符号。
这个怎么实现啊

你到底要C++还是C啊

#include <stdio.h>
int main()
{
    int d1,d2,d3,d4,d5,d6;
    int a,b,c,x,y;
    scanf("%d%d%d%d%d",&a,&b,&c,&x,&y);
    d1=a+b>c && b==c;
    d2=a||b+c&&b-c;
    d3=!(a>b) && !c || 1;
    d4=!(x=a) && (y=b) && 0;
    d5=!(a+b)+c-1&&b+c/2;
    d6=!10;
    if(d1||d2||d3||d4||d5||d6)
        printf("至少有一个逻辑表达式的值为真!\n");
    if(d1&&d2&&d3&&d4&&d5&&d6)
        printf("所有逻辑表达式的值都为真!\n");
    else
        printf("至少有一个逻辑表达式的值是假!\n");
    return 0;

}

你题目的解答代码如下:

#include <stdio.h>

int main()
{
    int a,b,c,x,y;
    int d1,d2,d3,d4,d5,d6;
    scanf("%d%d%d%d%d",&a,&b,&c,&x,&y);
    d1=a+b>c && b==c;
    d2=a||b+c&&b-c;
    d3=!(a>b) && !c || 1;
    d4=!(x=a) && (y=b) && 0;
    d5=!(a+b)+c-1&&b+c/2;
    d6=!10;
    if (d1 && d2 && d3 && d4 && d5 && d6)
        printf("所有逻辑表达式的值都为真!\n");
    else if (d1 || d2 || d3 || d4 || d5 || d6) 
        printf("至少有一个逻辑表达式的值为真!\n");
    else
        printf("至少有一个逻辑表达式的值是假!\n");

    return 0;
 
}
 

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632