C++怎么用if表示多个条件同时为真
例如
1234,输出No
1212,输出Yes 展开
输入的四位数为n的话,如下:
if( (n/1000 == 1 || n/1000 == 2) //最高位为1或2
&& ((n/100)%10 == 1 || (n/100)%10 == 2) //百位
&& ((n/10)%100 == 1 || (n/10)%100 == 2) //十位
&& (n%1000 ==1 || n%1000 == 2) ) //个位
printf("Yes");
else
printf("No");
扩展资料:
1、C/C++编程中if语句是用于的条件判断的控制语句,当判断条件成功时,将执行相应语句,否则跳过。具体形式如下:
if(表达式) 语句;
[else 语句;](可选)
或
if(表达式) 语句;
else if(表达式) 语句;
else if(表达式) 语句;
……
else 语句;
2、上面的描述当表达式成立时执行语句,而else是可选的,在表达式不成立时将执行此语句,可以不使用。此外if语句支持多层嵌套,可以对多个条件进行判断。
3、上例是输入一个值,然后根据它的范围输出提示。当if判断语句若仅用于赋值是,可以用?(问号运算)来替代,具体形式如下:
变量=(条件)?值1:值2
当条件成立时值1被赋予变量,否则值2被赋予。?(问号运算符)还可以嵌套
4、意思是输入一个分数,然后根据分数的大小判断究竟是哪个等级范围,最后将等级赋值给c变量。
推荐于2017-09-21
if( (n/1000 == 1 || n/1000 == 2) //最高位为1或2
&& ((n/100)%10 == 1 || (n/100)%10 == 2) //百位
&& ((n/10)%100 == 1 || (n/10)%100 == 2) //十位
&& (n%1000 ==1 || n%1000 == 2) ) //个位
printf("Yes");
else
printf("No");
if( (n/1000 == 1 || n/1000 == 2) //最高位为1或2
&& ((n/100)%10 == 1 || (n/100)%10 == 2) //百位
&& ((n/10)%100 == 1 || (n/10)%100 == 2) //十位
&& (n%1000 ==1 || n%1000 == 2) ) //个位
printf("Yes");
else
printf("No");
大神,具体要怎么做呢= =