c语言if语句的用法

Python013

c语言if语句的用法,第1张

C语言中if语句基本的有三种格式,在此基础上可以扩展一些其它格式,下面我们来看看c语言if语句的用法。

c语言if语句的用法

1、 if……形式

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

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

#include

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

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

int main(){

char c

printf("input a character: ")

c=get)

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类似的形式,但是都离不开上面介绍的三种基本形式。注意活学活用。

【拓展】c语言的优缺点

1. 简洁紧凑、灵活方便

C语言一共只有32个关键字,9种控制语句,程序书写形式自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。

2. 运算符丰富

C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的'运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

3. 数据结构丰富

C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。

4. C是结构式语言

结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

5.C语法限制

C语法限制不太严格,程序设计自由度大 虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度

6. C语言允许直接访问物理地址,可以直接对硬件进行操作

由于C语言允许直接访问物理地址,可以直接对硬件进行

c语言中多个if的用法的用法你知道吗?下面我就跟你们详细介绍下c语言中多个if的用法的用法,希望这些关于c语言的知识能帮到大家。

c语言中多个if的用法:基本形式if

if(表达式) 语句

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

【例5-3】

01.#include <stdio.h>

02.int main(void){

03.int a,b,max

04.printf("\n input two numbers: ")

05.scanf("%d%d",&a,&b)

06.max=a

07.if (max<b) max=b

08.printf("max=%d",max)

09.return 0

10.}

本例程序中,输入两个数a、b。把a先赋予变量max,再用if语句判别max和b的大小,如max小于b,则把b赋予max。因此max中总是大数,最后输出max的值。

c语言中多个if的用法:if-else

if(表达式)

语句1

else

语句2

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

【例5-4】

01.#include <stdio.h>

02.int main(void){

03.int a, b

04.printf("input two numbers: ")

05.scanf("%d%d",&a,&b)

06.if(a>b)

07.printf("max=%d\n",a)

08.else

09.printf("max=%d\n",b)

10.return 0

11.}

输入两个整数,输出其中的大数。改用if-else语句判别a,b的大小,若a大,则输出a,否则输出b。

c语言中多个if的用法: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语句的执行过程如下图所示。

【例5-5】

01.#include <stdio.h>

02.int main(void){

03.char c

04.printf("input a character:")

05.c=getchar()

06.if(c<32)

07.printf("This is a control character\n")

08.else if(c>='0'&&c<='9')

09.printf("This is a digit\n")

10.else if(c>='A'&&c<='Z')

11.printf("This is a capital letter\n")

12.else if(c>='a'&&c<='z')

13.printf("This is a small letter\n")

14.else

15.printf("This is an other character\n")

16.return 0

17.}

猜你喜欢:

1. if的用法

2. c语言学习心得6篇

3. if句型的用法总结

4. c语言有哪些函数必须介绍

5. 英语语法if的用法解释

if语句是c语言中的条件分支语句。它能将程序的执行路径分为两条。下面我们来看看c语言if的用法: if (condition) statement1; else statement2 其中,if和else的对象都是单个语句(statement),也可以是程序块。条件condition可以是任何返回布尔值的表达式。else子句是可选的。 if语句的执行过程如下:如果条件为真,就执行if的对象(statement1);否则,执行else的对象(statement2)。任何时候两条语句都不可能同时执行。考虑下面的例子: int a,b if(a <b) a = 0 else b = 0 本例中,如果a小于b,那么a被赋值为0;否则,b被赋值为0。任何情况下都不可能使a 和b都被赋值为0。 记住,直接跟在if 或else语句后的语句只能有一句。如果你想包含更多的语句,你需 要建一个程序块,如下面的例子: int bytesAvailable if (bytesAvailable >0) { ProcessData() bytesAvailable -= n } else waitForMoreData() 这里,如果变量bytesAvailable 大于0,则if块内的所有语句都会执行。 嵌套 if 语句 嵌套(nested)if语句是指该if语句为另一个if或者else语句的对象。在编程时经常要用到嵌套if语句。当你使用嵌套if语句时,需记住的要点就是:一个else语句总是对应着和它同一个块中的最近的if语句,而且该if语句没有与其他else语句相关联。下面是一个例子: if(i == 10) { if(j <20) a = b if(k >100) c = d// this if is else a = c // associated with this else } else a = d // this else refers to if(i == 10) 如注释所示,最后一个else语句没有与if(j <20)相对应,因为它们不在同一个块(尽 管if(j <20)语句是没有与else配对最近的if语句)。最后一个else语句对应着if(i==10)。 内部的else语句对应着if(k>100),因为它是同一个块中最近的if语句。 if-else-if 阶梯 基于嵌套if语句的通用编程结构被称为 if-else-if 阶梯。它的语法如下: if(condition) statement else if(condition) statement else if(condition) statement else statement 条件表达式从上到下被求值。一旦找到为真的条件,就执行与它关联的语句,该阶梯的其他部分就被忽略了。如果所有的条件都不为真,则执行最后的else语句。最后的else语句经常被作为默认的条件,即如果所有其他条件测试失败,就执行最后的else语句。如果没有最后的else语句,而且所有其他的条件都失败,那程序就不做任何动作。 . 下面的程序通过使用if-else-if阶梯来确定某个月是什么季节。 // Demonstrate if-else-if statements. main() { int month = 4// April if (month == 12 || month == 1 || month == 2) printf ( "Winter") else if (month == 3 || month == 4 || month == 5) printf ("Spring") else if (month == 6 || month == 7 || month == 8) printf ( "Summer") else if (month == 9 || month == 10 || month == 11) printf ("Autumn") else printf ( "Bogus Month") } 该程序产生如下输出: Spring. 试验这个程序。你将看到,不管你给month什么值, 该阶梯中有而且只有一个语句执行。 小结: if语句的三种形式: a) if (表达式)语句 b) if (表达式)语句1 else 语句2 c)if (表达式1)语句1 else if(表达式2)语句2 …… else  语句