前言:
今天大家对“c语言两个if语句并列怎么表示出来”大概比较关心,各位老铁们都需要学习一些“c语言两个if语句并列怎么表示出来”的相关文章。那么小编在网摘上汇集了一些关于“c语言两个if语句并列怎么表示出来””的相关知识,希望同学们能喜欢,你们快快来学习一下吧!一、 逻辑运算函数1.1 --- 函数IF 逻辑判断
IF(logical_test判断条件,value_if_true成立,value_if_false不成立)
第一参数代表一个逻辑判断条件,会返回一个True或False的逻辑结果值;
当第一参数结果为True时,执行第二参数;当第一参数结果为False时,执行第三参数;
1.1.1- ------ 单条件判断返回值
公式 =IF(B2>=80,"合格","不合格") 当条件成立时判断为真,条件不成立时判断为假。
1.1.2- ------ 多条件判断返回值、IF嵌套
公式 =IF(B4=101,"现金",IF(B4=102,"股票",IF(B4=103,"原材料","")))
当B4条件成立时执行第二参数,不成立时执行第三参数。注意:多条件判断时括号的位置,右括号都在最后,有几个IF就输入几个右括号。IF函数最多嵌套64个。
1.1.3- ------ 多区间判断返回值
公式 =IF(B4>=90,"优秀",IF(B4>=80,"良好",IF(B4>=60,"合格","不合格")))
注意:IF在进行区间判断时,数字一定要按顺序判断,要么升要么降。
1.1.4- ------ 多条件并列判断返回值、AND、OR
公式 = IF(AND(B4>=80,C4>=80),"合格","不合格")
注意:And()表示括号内的多个条件要同时成立,Or()表示括号内的多个条件任一个成立。
1.1.5- ------ 复杂的多条件判断
=IF(OR(AND(A1>60,B1<100),C1="是"),"合格","不合格")
=IF(ADN(OR(A1>60,B1<100),C1="是"),"合格","不合格")
1.1.6- ------ IF({1,0}结构向左查询、VLOOKUP+IF逆向查找匹配
万能通用用法:=vlookup(查找值,if({1,0},查找列,结果列),2,0)
公式 =VLOOKUP(C11,IF({1,0},C3:C7,B3:B7),2,0)
注意:花括号{}表示数组数据,利用数组运算返回数组的原理。当输入完公式后,同时按Ctrl+Shift+Enter三键结束,会自动生成;故这一对大括号不是输入的,是按出来的。
=IF({1,0},……) ,{1,0}是一个水平方向的一维数组,它有两个值,1和0。用作IF函数的第一参数,1代替真,即True,0代替假,即False,说明返回的结果也只这两种;
如上,当条件成立时返回C列,当条件不成立时返回B列,从而位置互移,组成新的查询区域
当然,这里的{1,0}有很多设置方式,其1还可以设置为任何不等于0的数字或TRUE,效果一样,如{999,0},{TRUE,FALSE},{TRUE,0}……
1.2 --- 函数IFS
IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2],…)
即 =IFS(判断1,结果1,判断2,结果2,判断3,结果3...)
第一参数:第一个条件;第二参数:第一个条件正确时返回的结果
第三参数:第二个条件;第四参数:第二个条件正确时返回的结果
以此类推,最多可以设置127组对应的条件与结果…
相较于IF函数,IFS函数是没有条件错误时返回的结果的,如条件不满足,就会返回错误值#N/A,并且它的条件与结果都是成对出现的。
1.1.1- ------ 多区间判断
公式 =IFS(B6>=85,"优秀",B6>=75,"良好",B6>=60,"及格",B6<60,"不及格")
在进行区间判断时,数字一定要按顺序判断。
1.3 --- 函数 IFERROR 错值处理
IFERROR (value需要计算的公式, value_if_error当公式错误时指定返回的值)
第一参数,必需。是需要计算的公式,即检查是否存在错误的参数
第二参数,必需。当第一参数的计算结果错误时,即执行第二参数,否则将返回公式的结果。
计算错误值类型有 #N/A、#VALUE!、#REF!、#DIV/0!、#NUM!、#NAME?或#NULL!。
#N/A:公式中引用了不正确的数据源或数据源不可用;
#VALUE!:公式中使用了错误的参数或运算对象类型,或公式自动更正功能不能更正公式时;
#REF!:公式中引用了无效的单元格;
#DIV/0!:公式中有除数为0或除数为空的单元格;
#NUM!:当公式或函数中某个数字有问题时;
#NAME?:单元格公式中的函数名称有错误;
#NULL!:使用了不正确的区域运算符或不正确的单元格引用;
如果value或value_if_error是空单元格,则IFERROR将其视为空字符串值 ("")。
1.1.1- ------ 单条件判断
=IFERROR(A2/B2,""),即把公式产生的错值显示为空
1.1.2- ------ SUM+IFERROR 忽略错误值求和
公式 =SUM(IFERROR(E2:E9,0)) 即可忽略错误值完成求和
注意:此函数为数组函数,需要CTRL+SHIFT+ENTER三键结束。
1.4 --- 函数ISNUMBER 数字判定
ISNUMBER(value) 用于判断指定数据是否为数字
参数value可以是空值/空单元格、错误值、逻辑值、文本、数字、引用值,或者引用要检验的以上任意值的名称
1.5 --- 函数公式组合1.1.1- ------ MIN+IF 用于计算指定条件的最小值
计算生产部的最低分数 =MIN(IF(A2:A9=F3,D2:D9))
先用IF判断A列的部门是否等于F3指定,若条件成立,则返回D列对应的分数,否则返回逻辑值FALSE:{FALSE;45;FALSE;FALSE;FALSE;66;FALSE;72}, 再使用MIN计算出其中的最小值。
MIN函数有一特性,即可自动忽略逻辑值,只对数值部分计算,最终得到指定部门的最低分数。
1.1.2- ------ IF+COUNTIF 关键字提取
公式 =IF(COUNTIF(A2,"*拱墅*"),"拱墅",IF(COUNTIF(A2,"*西湖*"),”西湖”,IF(COUNTIF(A2,”*下城*”,”下城”,””)
公式解析 COUNTIF(A2,"*拱墅*")中*为通配符,表示前后含有拱墅的字符,计数为1,没有则计数为0,再通过IF得到结果。
若区域较多,使用IF嵌套比较复杂,可以通过下面两种思路进行计算
先在D列建立一个关键词列,然后在B2输入 =LOOKUP(100,FIND($D$2:$D$4,A2),$D$2:$D$4)
或输入 =INDEX(D:D,MAX(ISNUMBER(FIND($D$2:$D$4,A2))*ROW($D$2:$D$4)))
这两个公式都需要CTRL+SHIFT+ENTER三键结束。
1.1.3- ------ IF+FIND 关键字提取
公式 =IF(ISNUMBER(FIND("拱墅",A2)),"拱墅",IF(ISNUMBER(FIND("西湖",A2)),"西湖",IF(ISNUMBER(FIND("下城",A2)),"下城","")))
如A列中带有“拱墅"两个字,那么输出为拱墅区,以此类推
简化关键函数解析 IF(ISNUMBER(FIND(“拱墅",A2)),”拱墅”,”"),
公式A:Find("拱墅",a2),表示在A2中查找关键词拱墅,如有,会返回一个位置,即7;如无,返回错误;
公式B:Isnumber(公式A),如括号里的公式是数值7,那么整体公式返回TRUE,如括号里是错误值,那么整体公式返回FALSE
整体公式:IF(公式B,"拱墅",""),如公式B的值是TRUE,为拱墅,否则为空
然后一直使用IF函数进行嵌套即可得到结果
若将FIND函数改成SEARCH函数也能得到同样的结果。
1.1.4- ------ SUM+IF 多条件求和
如图,统计薪资7500以上的男性员工的总工资,公式
=SUM(IF((C2:C8=H2)*(F2:F8>7500),F2:F8,0)),并同时按Ctrl+Shift+Enter 结束。
(C2:C8=H2)*(F2:F8>7500)为逻辑值组成的数组相乘,表示同时满足C2:C8中的数据是“男”且F2:F8中的数据是>7500元(*表示同时满足,+表示满足其一),结果为{0;0;1;0;0;0;1},为1时返回IF函数第二参数,为0时返回IF函数第三参数,最终IF函数返回的结果为数组{0;0;8000;0;0;0;8500},再用SUM对这个数组进行求和。
1.1.5- ------ SUM+IF+ISNUMBER 忽略错误值的文本求和
如图,忽略文本和错误值统计总销量,公式 =SUM(IF(ISNUMBER(C2:C10),C2:C10,0)),并同时按下Ctrl+Shift+Enter 结束
先用逻辑值函数ISNUMBER对数据区域C2:C10进行判断,当为数值时返回TRUE,否则返回FALSE,ISNUMBER(C2:C10)返回的结果为数组 {TRUE;FALSE;TRUE;TRUE;FALSE;TRUE;TRUE;FALSE;TRUE},IF函数第二参数返回数组{121;"未统计";132;132;#VALUE!;211;166;#NAME?;138},第一参数数组中对应的元素TRUE会返回第二参数的数组对应的元素,IF函数最终的值为 {121;0;132;132;0;211;166;0;138},再用SUM函数对这个数组进行求和。
1.1.6- ------ IF+ISERROR 处理错误值
如图,用VLOOKUP查找“小包”对应的线上销量,“小包”在数据区域中并不存在,即查找值不存在,那么VLOOKUP会返回#N/A错误值,这时就需要借助IF+ISERROR将错误值转化为空值或自行设定的文本,公式为 =IFERROR(VLOOKUP(E2,A1:C10,3,FALSE)),"查找到此人”) 或写 =IF(ISERROR(VLOOKUP(E2,A1:C10,3,FALSE)),"查找到此人",VLOOKUP(E2,A1:C10,3,FALSE))
1.1.7- ------ IF 对不规则的重复值排序
对部门进行排序,公式 =IF(B2<>B1,1,A1+1),对相邻的两个上下单元格进行判断,不等于时,返回第二参数1,等于时,返回第三参数,为上个序号+1。
1.6 --- 函数NOT 逻辑求反
NOT(logical) 对其参数的逻辑求反
当值为TRUE,NOT返回的结果恰相反,结果为FALSE;当值为FALSE结果为TRUE。
1.7 --- 函数IFNA
IFNA(value, value_if_na)
如果公式返回错误值 #N/A(公式中引用了不正确的数据源或数据源不可用),则结果返回指定的值;否则返回公式的结果。语法和IFERROR相同,只是检查的错误值范围不同。