if分段函数c语言,c语言if语句语法

  if分段函数c语言,c语言if语句语法

  我们写的函数里可以有多个语句,但是这些语句总是从前到后执行的。除了从前到后的顺序执行,有时候我们还需要检查一个条件,然后根据检查的结果执行不同的后续代码。在C语言中,它可以用分支语句来实现,例如:

  如果(x!=0) {printf(x不等于0!\ n’);}

  x!=0表示“x不等于0”的条件。这个表达式称为控制表达式。如果条件为真,将执行{}中的语句;否则不会执行{}中的语句,直接跳转到}之后。而如果控制表达式改变了程序的控制流程,不是从前到后顺序执行,而是根据不同的条件执行不同的语句。这个控制流被称为分支。在上例中!=符号表示“不等于”。像这样的运算符有:

  关系运算符和等式运算符

  运算符

  意义

  ==

  胜任

  !=

  不等于

  比.更大

  不到

  =

  大于或等于

  =

  小于或等于

  使用上述运算符时应注意:

  1.这里的==表示数学中的等式关系,相当于数学中的=号。初学者常犯的一个错误就是在控制表达式中写==了。在C语言中,=号是赋值运算符,两者的含义完全不同。

  2.如果表达式表示的比较关系为真,则值为真;否则为假,在C语言中分别用1和0表示。例如,如果x是-1,那么表达式x 0的值是0,表达式x -2的值是1。

  3.在数学中,a b c意味着B既大于A又小于C,但作为C语言表达式却不是这样。以上运算符都是左组合。请想一想这个表达代表了什么。

  4.这些运算符的两个操作数应该是同一类型,比如两边都是字符型、整数型或者浮点型,但是两个字符串不能比较。我们以后会介绍比较字符串的方法。

  5、==还有!=称为EqualityOperator,其他四个称为关系运算符。相等运算符的优先级低于关系运算符。

  If语句可以用来构成分支结构。它根据给定的条件进行判断,决定执行某个分支程序段。在C语言中,if语句有三种基本形式。

  1.基本形式:如果

  If(表达式)语句

  它的语义是:如果表达式的值为真,则执行下面的语句,否则,不执行该语句。该过程可以表示为下图。

  下面是一个基本形式的例子:

  # include stdio . h int main(void){ inta,b,maxPrintf(请输入两个用逗号分隔的数字:\ n );scanf(%d,%d ,a,max=a;if(max b)max=b;printf(max=%d\n ,max);系统(“暂停”);return0}

  运行结果:

  在这个示例程序中,输入两个数字A和b,先给一个变量max,然后用if语句判断max和b的大小,如果max小于b,就把b给max。所以max里面总是有一个很大的数,最后输出max的值。

  2.if-else形式

  If(表达式)语句1;Else语句2;

  它的语义是:如果表达式的值为真,执行语句1,否则执行语句2。其执行过程可以表示为下图。

  以下是if-else形式的示例:

  # include stdio . h int main(void){ inta,b;Printf(请输入两个用逗号分隔的数字:\ n );scanf(%d,%d ,a,if(a b) printf(max=%d\n ,a);else printf(max=%d\n ,b);系统(“暂停”);return0}

  运行结果:

  输入两个整数并输出其中最大的一个。用if-else语句判断A和b的大小,如果A大,输出A,否则输出b。

  3.if-else-if形式

  if语句的前两种形式通常用于两个分支的情况。当有多个分支选择时,可以使用if-else-if语句,其一般形式为:

  If(表达式1)语句1;Else if(表达式2)语句2;Else if(表达式3)语句3;… else if(表达式m)语句m;Else语句n;

  它的语义是:依次判断表达式的值,当某个值为真时,执行其对应的语句。然后跳转到整个if语句之外,继续执行程序。如果所有表达式都为假,则执行语句n,然后继续后续过程。if-else-if语句的执行过程如下图所示。

  以下是if-else-if形式的示例:

  # include stdio . h int main(void){ charc;Printf(请输入一个字符:\ n );c=getchar();If(c 32) printf(这是一个控制字符。\ n’);Elseif(c=0 c=9) printf(这是一个数字。\ n’);Elseif(c=A c=Z) printf(这是大写字母。\ n’);Elseif(c=a c=z) printf(这是一个小写字母。\ n’);Elsprintf(这是其他类型的字符\ n );系统(“暂停”);return0}

  运行结果:

  这个例子需要区分键盘输入字符的类型。可以根据输入字符的ASCII码来判断类型。根据ASCII代码表,小于32的ASCII值是控制字符。“0”和“9”之间的数字为数字,“A”和“Z”之间的大写字母为小写字母,其余为其他字符。这是一个多分支选择问题。用if-else-if语句编程,判断输入字符的ASCII码范围,分别给出不同的输出。比如输入是“g”,输出显示是小写字符。

  使用if语句时,还应注意以下问题:

  在if语句的三种形式中,表达式跟在if关键字后面。该表达式通常是逻辑表达式或关系表达式,但也可以是其他表达式,如赋值表达式,甚至是变量。例如:

  If(a=5)语句;If(b)语句;

  都可以。只要表达式的值不为0,就是“真”。例如:

  if(a=5)…;

  中表达式的值始终为非0,因此必须始终执行后续语句。当然,程序中可能不会出现这种情况,但在句法上是合法的。

  作为另一个例子,下面的程序段:

  if(a=b) printf(%d ,a);else printf( a=0 );

  这个语句的语义是将B的值赋给A,如果不为0,则输出该值,否则输出字符串“a=0”。这种用法经常出现在程序中。

  在if语句中,条件判断表达式必须用括号括起来,并且必须在语句后面加上一个加号。

  在if语句的三种形式中,所有语句都应该是单个的。如果要在满足条件时执行一组(多条)语句,必须用{}将这组语句括起来,形成一个复合语句。但需要注意的是,不能在}之后给加分。例如:

  if(a b){ a;b;} else { a=0;b=10}

  if语句的嵌套

  当if语句中的执行语句是if语句时,就构成了if语句的嵌套。它的一般形式可以表示如下:

  If(表达式)if语句;Or: if(表达式)if语句;Else if语句;

  嵌套的if语句可能又是if-else类型,这将导致多个if和其他if的重叠。这时候要特别注意if和else的配对。例如:

  If(表达式1) if(表达式2)语句1;Else语句2;

  else匹配哪个if?应该理解为:

  If(表达式1) if(表达式2)语句1;Else语句2;

  或者应该理解为:

  If(表达式1) if(表达式2)语句1;Else语句2;

  为了避免这种歧义,C语言规定else总是和前面最近的if成对出现,所以上面的例子要按照前一种情况来理解。

  下面的例子说明了这个问题:

  # include stdio . h int main(void){ inta,b;Printf(请输入两个数字a和b:\ n );scanf(%d,%d ,a,if(a!=B)if(A B)printf( A B \ n );elseprintf( A B \ n );elseprintf( A=B \ n );系统(“暂停”);return0}

  运行结果:

  比较两个数的大小关系。在这个例子中,使用了if语句的嵌套结构。嵌套结构本质上是针对多分支选择的。其实有三个选择,A B,A B或者A=B,这类问题也可以用if-else-if语句来做。并且程序更加清晰。因此,if语句的嵌套结构一般很少使用。使程序更容易阅读和理解。

  例如,下面的代码:

  # include stdio . h int main(void){ inta,b;Printf(请输入两个数字a和b:\ n );scanf(%d,%d ,A,if(A==B)printf( A=B \ n );else if(A B)printf( A B \ n );else printf( A B \ n );系统(“暂停”);return0}

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • shell编程 if,shell脚本if语法,详解Shell编程之if语句实战(小结)
  • shell脚本中的if语句,shell脚本中if用法
  • python中if语句有两个条件,if语句如何判断多个条件
  • python中有if不出现else这种情况存在吗,python中if语句用法不用else是不是出不来
  • pythonfor循环嵌套if语句怎么循环,python中for循环嵌套if语句
  • python中if语句嵌套for循环,python中for循环和if else嵌套
  • python闰年判断leapyear,python的if语句判断是否为闰年
  • if语句知识点,if语句的基本语法
  • if语句和switch语句适合于什么情况,if语句和switch语句哪个效率高
  • python中的if用法,python 的if语句
  • if语句可以判断字符串相等吗,if怎么判断字符相等
  • java中if表达式必须是什么类型,if语句的形式有哪些
  • if语句可以判断字符串相等吗,if语句判断字符相等
  • if语句有三种语法格式,常用的if语句定义格式有
  • java中的if语句用法,java中if用法
  • 留言与评论(共有 条评论)
       
    验证码: