c语言if语句的用法

作者&投稿:尧纪 (若有异议请与网页底部的电邮联系)
求助!!!!C语言中if语句用法详解~

1.if语句的一般格式
if(表达式)
{语句组1;}
[else
{语句组2;} ]
(1)if语句中的“表达式”必须用“(”和“)”括起来。
(2)else子句(可选)是if语句的一部分,必须与if配对使用,不能单独使用。
(3)当if和else下面的语句组,仅由一条语句构成时,也可不使用复合语句形式(即去掉花括号)。

2.if语句的执行过程
(1)缺省else子句时
当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句组1,否则直接转向执行下一条。
(2)指定else子句时
当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句组1,然后转向下一条语句;否则,执行语句组2。如图4-1(b)所示。
3.if语句的嵌套与嵌套匹配原则
if语句允许嵌套。所谓if语句的嵌套是指,在“语句组1”或(和)“语句组2”中,又包含有if语句的情况。
if语句嵌套时,else子句与if的匹配原则:与在它上面、距它最近、且尚未匹配的if配对。
为明确匹配关系,避免匹配错误,强烈建议:将内嵌的if语句,一律用花括号括起来。

1.if语句的一般格式
if(表达式)
{语句组1;}
[else
{语句组2;} ]
(1)if语句中的“表达式”必须用“(”和“)”括起来。
(2)else子句(可选)是if语句的一部分,必须与if配对使用,不能单独使用。
(3)当if和else下面的语句组,仅由一条语句构成时,也可不使用复合语句形式(即去掉花括号)。

2.if语句的执行过程
(1)缺省else子句时
当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句组1,否则直接转向执行下一条。
(2)指定else子句时
当“表达式”的值不等于0(即判定为“逻辑真”)时,则执行语句组1,然后转向下一条语句;否则,执行语句组2。如图4-1(b)所示。
3.if语句的嵌套与嵌套匹配原则
if语句允许嵌套。所谓if语句的嵌套是指,在“语句组1”或(和)“语句组2”中,又包含有if语句的情况。
if语句嵌套时,else子句与if的匹配原则:与在它上面、距它最近、且尚未匹配的if配对。
为明确匹配关系,避免匹配错误,强烈建议:将内嵌的if语句,一律用花括号括起来。

c语言提供了三种形式的if语句:

1、if(表达式)语句。

例如:if(x>y)printf("%d",x);

此时,如果表达式为真,则执行printf语句。

2、if(表达式)语句1 else 语句2

例如:

if(x>y)printf("%d",x);

else printf("%d",y);

此时,如果x>y成立为真,则执行语句printf("%d",x),然后直接跳过else,同时也跳过语句printf("%d",y),去执行之后的语句。

如果x>y不成立为假,则不执行语句printf("%d",x),执行语句printf("%d",x)。

3、if(表达式1)语句1

else if(表达式2)语句2

else if(表达式3)语句3

else if(表达式m)语句m

else 语句 n

此时,哪个表达式为真,则运行哪个if后面的语句。如表达式3成立为真,执行语句3。

在每个语句中,可以有多个语句,但需要加上大括号

例:if(x>y){printf("%d",x);break;}

扩展资料:

if语句使用的注意事项:

1.if(条件表达式)其后没有分号。

一般来说,有"{}"有没有";",有";"就没有"{}"

2.if语句所控制的语句如果是一条语句,我们可以不写大括号;

如果控制的是两条以上的语句,必须加大括号。

if语句的控制体没有加大括号是其后跟的一条语句。

建议:永远加上大括号。避免不必要的错误。

参考资料:百度百科-if语句



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

  1、 if……形式

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

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

    #include <stdio.h>
  int main(){
  int a,b,max;
  printf("
 input two numbers: ");
  scanf("%d%d",&a,&b);
  max=a;
  if (max<b) max=b;
  printf("max=%d
",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
",a);
  else
  printf("max=%d
",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
");
  else if(c>='0'&&c<='9')
  printf("This is a digit
");
  else if(c>='A'&&c<='Z')
  printf("This is a capital letter
");
  else if(c>='a'&&c<='z')
  printf("This is a small letter
");
  else
  printf("This is an other character
");
  return 0;
  }


  4、扩展形式

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



if语句一般有三种基本形式,其它扩展形式,也是以下面三种形式为基础:



if是真的话那么程序则执行if里的语句。。。
既然if是真,那么else当然不会运行。。

if else的意思是 如果if是真那么只运行if,如果(((if是假就运行else..)))
多练习下很容易掌握的,,,,每个else只能对他前面的一个if起作用也就是看else只看他前面的一个if

列:

main()
{
float grade;
int n1=0,n2=-1;
system("cls");
while(grade!=-1)
{
printf("grade[]:=");
scanf("%f",&grade);
if(grade>=60) (((((((如果grade大于等于60
n1++; (((((((((((((((那么n1+1;
else ((((((((((((((((else看他上一个if
n2++; (((((((((((((((即如果上一个if里是假。。。 那么n2+1
}
printf("YES---%d\tNO---%d",n1,n2);
getch();
}


这是复合语句的定义
把多个语句用括号{}括起来组成的一个语句称复合语句。
在程序中应把复合语句看成是单条语句,而不是多条语句,例如
  {
  x=y+z;
  a=b+c;
  printf("%d%d",x,a);
  }
是一条复合语句。复合语句内的各条语句都必须以分号“;”结尾;此外,在括号“}”外不能加分号。
所以一般复合语句用于
要执行某段特殊功能的程序
比如for语句
if语句
while
语句
甚至
某些函数等


if else在c语言中的用法
if else在C语言中的用法包括加附加条件、单独使用等等。1、加附加条件 if后面加一个条件,如果条件成立,则执行if语句里面的内容,如果不成立,则执行else语句内的内容。如果还有else if语句的话,if语句不成立,则进行else if内的语句判断,都不符合,才会执行else。2、单独使用 if可以单独使用来做条件...

C语言中的IF语句是什么?
1在条件判断中表示TRUE,0表示FALSE。在“IF({1,0}”中,根据两个条件,分别返回IF的两个值,同时把两个结果组成一个数组。 例如:=IF({1,0},A1:A2,B1:B2),返回的是A1:B2。(或者说是{A1,B1;A2,B2} 组成的数组)1、C是高级语言:它把高级语言的基本结构和语句与低级语言的实用性结合...

c语言if的用法?
首先你要明白3点:1,if 语句:该语句的作用是判断括号内的表达式是否成立,成立,则执行if后面的语句,否则不执行 2.% 求余(模)运算符 ,a%b的结果为,a整除b之后得到的余数。例如 9%6 其结果为3,6%9==6 3 != 关系运算符中的不等于,判断 该运算符左右两边的表达式是否相等。因此,该条...

C语言中的的if语句共有多少种格式?
if(表达式) 语句 其语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。2、第二种形式为: if-else if(表达式) 语句1;else 语句2;其语义是:如果表达式的值为真,则执行语句1,否则执行语句2 。3、第三种形式为if-else-if形式 前二种形式的if语句一般都用于两个分支的情况。当...

c语言if语句的使用?
i除以3的余数,当i能够被3整除时,为if(1);当i能够同时不能被3整除时,为if(0)。if (i%3==0) 如果i能整除3,那么条件为真,执行下面的语句,if (i%3) 的意思是,把i%3当做一个变量,这个变量只有真假两个值,0为假,非0为真。所以如果i%3不等于零,即i不能整除3时,条件成立,...

关于C语言中if,elseif和else的区别在哪里
C语言中if,elseif和else的主要区别是用法的区别。if语句用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。如果后面没有连接else则判断为假时不执行任何操作。else if是镶嵌在if语句里的,如果一个程序需要2个或以上的if语句时,则使用else if语句,表示条件判断为假...

c语言if语句的用法
c语言提供了三种形式的if语句:1、if(表达式)语句。例如:if(x>y)printf("%d",x);此时,如果表达式为真,则执行printf语句。2、if(表达式)语句1 else 语句2 例如:if(x>y)printf("%d",x);else printf("%d",y);此时,如果x>y成立为真,则执行语句printf("%d",x),然后直接跳过else...

c语言中的if语句有什么用?
假设程序变换一下形式,结果应当是一样的:s=0; for ( b=1;b<=c;b++ ) s+=1; s+=a;则,前面的循环让b增加了c个1,即s+=c;整个程序就等效s=a+c;了 另一个角度来解读程序:s的初始值是a,然后通过循环让s在其基础上增加了c个1,即增加了c ...

c语言中if语句的用法是什么?
include<stdio.h> void main(){ double x,y;scanf("%lf",&x);if(x>1)y=x*x+1;if(x>=-1&&x<=1)y=x*x;if(x<-1)y=x*x-1;printf("%lf",y);}

C语言编程中if语句的格式是什么?
1.if(条件语句){ 程序执行体;} else { 程序执行体;} 2.举个例子:int a;scanf("%d",&a);if(a > 0){ printf("a > 0"); \/\/如果输入的数大于0,就执行这个语句 } else \/\/就是除了a>0的情况 { printf("a < 0"); \/\/如果输入的数小于0,就执行该语句 } ...

田阳县18714897467: C语言中if语句的运用 -
詹从常规: if a=0; then b=1; else b=2; 判断语句,如果的意思. if-else是判断语句,if(条件表达式,返回一个布尔型变量),如果是真,那就执行if后面的语句,并且跳过else后面的语句,要是返回假,则执行else里面的语句,if里面的语句就不会得到执行~

田阳县18714897467: 请问if语句(C语言)的具体用法? -
詹从常规: 条件成立时才执行的语句1 } 语句2 //if(条件) //条件成立则继续执行,不成立则 { 语句1 //条件不成立时就跳过if语句

田阳县18714897467: C语言IF的使用,来大神 -
詹从常规: #include<stdio.h> void main (void) {int a,b,c,d,e,f,g,h;printf(" 如果我有一块钱,我就可以买可乐给你喝.\n");printf("我有一块钱吗?\n");scanf("%d",&a);if(a==0)printf("所以当你跑完2000米后,我只能给你杯白开水.\n");else...

田阳县18714897467: C语言小白问题:if用法 -
詹从常规: 语法: if (逻辑表达式)..... , 小括号内是 逻辑表达式,结果为 真 或 假,0 为假,非0为真. if(2 > 1) 与 if("2 > 1") 得到的条件都是真. 2>1 是逻辑表达式,2和1都是整型数,int 型,逻辑运算结果是真. "2 > 1" 是字符串.(int)("2>1") 不为0. 非0就是真. 即使是 "2 < 1",它 也 是字符串,(int)("2<1") 也不为0. 非0就是真.

田阳县18714897467: C语言 if用法 -
詹从常规: if(!l->next) l是一指针,(!l->next)相当于(!(l->next))l所指向的next的值如果是非零(感叹号表示非运算)或者非NULL,那整个表达是就是假,if后面的条件语句就不执行,否则执行 if(sel==1)就是简单的判断sel等不等于1,等于1,if后面的条件语句执行,否则,不执行

田阳县18714897467: c语言的if语法 -
詹从常规: 这样写符合语法,也没什么不规范的地方. 不过对于连续的if,许多人可能会这样写:if (dj=='a'){printf("1~10");}else if (dj=='b'){printf("10~20");}else{printf("cuowu");} 可以省掉最后里面的逻辑与表达式,运行时也可以会几个判断,更快一些. ---- [原创回答团]

田阳县18714897467: 求助!!!!C语言中if语句用法详解
詹从常规: 1.if语句的一般格式 if(表达式) {语句组1;} [else {语句组2;} ] (1)if语句中的“表达式”必须用“(”和“)”括起来. (2)else子句(可选)是if语句的一部分,必须与if配对使用,不能单独使用. (3)当if和else下面的语句组,仅由一条语句构成时,也可...

田阳县18714897467: C语言中,if语句的用法? -
詹从常规: if(i==0){a=b;}else{a=c}

田阳县18714897467: c语言if语句的用法 -
詹从常规: for后面没有大括号括起来的话,后面的确只能加一条语句,但if和else是一个整体.printf不在for循环语句中,所以即使for后面的语句没有执行,但循环没有结束,所以不能直接执行printf语句.

田阳县18714897467: c语言if语句用法 -
詹从常规: for(i=1;i<10;i++) if(i>max) max=i; else if(imax) max=i; else if(i

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网