首页 > 技术文章 > c语言if语句的用法

zhangdemingQ 2019-12-29 19:03 原文

 if语句一般有三种基本形式,其它扩展形式,也是以下面三种形式为基础,个人活学活用而已。

  1、 if……形式

  一般格式:if(表达式) 语句;

  语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。语句可以是单条语句,也可以是用花括号{}包括起来的复合语句。示例如下:

#include <stdio.h>

int main()

{
  int a,b,max;
  printf("\n input two numbers: ");
  scanf("%d%d",&a,&b);
  max=a;
  if (max<b) max=b;
  printf("max=%d\n",max);
  return 0;
}

2、if……else形式

  一般格式:

  if(表达式)

  语句1;

  else

  语句2;

 

  语义是:如果表达式的值为真,则执行语句1,否则执行语句2 。语句1和语句2可以是复合语句。

  示例如下:

#include <stdio.h>

int main()
{
 int a, b;
 printf("input two numbers: ");
 scanf("%d%d",&a,&b);
 if(a>b)
 printf("max=%d\n",a);
 else
 printf("max=%d\n",b);
 return 0;
}

 

  3、if……else……if形式

  一般形式为:

  if(表达式1)

  语句1;

  else if(表达式2)

  语句2;

  else if(表达式3)

  语句3;

  …

  else if(表达式m)

  语句m;

  else

  语句n;

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

#include <stdio.h>

int main()
{
  char c;
  printf("input a character: ");
  c=getchar();
  if(c<32)
  printf("This is a control character\n");
  else if(c>='0'&&c<='9')
  printf("This is a digit\n");
  else if(c>='A'&&c<='Z')
  printf("This is a capital letter\n");
  else if(c>='a'&&c<='z')
  printf("This is a small letter\n");
  else
  printf("This is an other character\n");
  return 0;
}

4、扩展形式

  if条件控制语句的形式是多种多样的。比如if嵌套、if……if类似的形式,但是都离不开上面介绍的三种基本形式。个人活学活用即可。

推荐阅读