在c中的双重条件

时间:2017-07-11 12:35:32

标签: c

我在c

中编写代码

我是初学者,如果在我的代码中(a==1,b<=8),我认为控件首先检查a然后b的值,然后运行if条件,但我认为我我不知道写的准确语法,任何人都可以给我正确的语法。这是我的代码:

#include <stdio.h>
#include <cono.h>
#include <iostream.h>
#include <stdlib.h>
void main(void)
{
    int a, b;
    printf("enter a");
    scanf("%d",&a);
    printf("enter b");
    scanf("%d",&b);
    if(a==1, b<=8)
    {
        printf("you");
        exit(0);
    }
    if(a==2, 5<b<=10)
    {
        printf("you");
    else
        printf("me");
    }
    getch();
}

如果第一个条件为真,则控制检查第二个条件,然后运行程序,例如:

(a==2,5<b<=10)

如果a等于2,那么控制检查b是否小于10且大于5是否如此,如果不是则控制运行如果不是,那么控制运行else语句

4 个答案:

答案 0 :(得分:1)

if(a==1,b<=8)应为if(a==1 && b<=8)

if(a==2,5<b<=10)应为if(a==2 && 5<b && b<=10)

请在提出这些问题之前阅读一些初学者书或一些教程。

答案 1 :(得分:0)

C or / and中的逻辑运算符分别为||&&,因此您可以重写

if(a==1,b<=8)if(a==1 && b<=8)if(a==1 || b<=8)

答案 2 :(得分:0)

嗨试试这个希望它的工作

#include<stdio.h>
#include<cono.h>
#include<iostream.h>
#include<stdlib.h>
void main(void)
{
 int a,b;
 printf("enter a");
 scanf("%d",&a);
 printf("enter b");
 scanf("%d",&b);
 if(a==1 && b<=8)
 {
  printf("you");
  exit(0);
  } else if(a==2 && 5<b && b<=10)
 {
  printf("you");
 }
else{
  printf("me");
  }
  getch();
  }

答案 3 :(得分:0)

您需要的是if(a==1,b==2) printf("hello\");

逗号运算符编译,但它不能执行您想要的操作。

if(3<a<8)
如果b为2,

将打印“hello”,无论a的值是什么。

构造:

{{1}}

也不起作用。它编译,但它不会做你想要的。它做的是比较3&lt; a并计算结果,即true或false,即1或0.之后,结果将与8进行比较,并且由于0和1都小于8,因此将始终执行if语句中的内容。