c语言程序设计选择结构教案,C语言程序设计教案 第五章 选择结构程序设计.doc...

C语言程序设计教案 第五章 选择结构程序设计

第五章 选择结构程序设计

第五章 选择结构程序设计教学目的:1、掌握实现选择结构的两种语句、一个运算符

2、学会编写选择结构的程序教学重点:

教学难点:if-else语句、switch语句、条件运算符嵌套if-else语句中的if与else匹配问题步骤一 复习引导

上一次课已经介绍了程序基本结构之一,但在大多数情况下都要用到选择结构。

?

步骤二 讲授新课

在C语言中实现选择结构的控制语句主要有if语句、switch语句

一、条件语句

1、if语句的三种形式

语法1:if (表达式)语句;

如:#include

main( )

{ char ch; ch=getchar();

if(ch>’a’&&ch<=‘z’) ch+=‘A’-’a’;

putchar(ch);

}

语法2:if (表达式) 语句1;

else 语句2;

如:#include

main()

{ int a,b;

scanf (“%d%d”,&a,&b);

if(a>b) printf(“max=%d\n”,a);

else printf (“max=%d\n”,b);

}

语法3:if (表达式1) 语句1;

else if (表达式2) 语句2;

else if (表达式3) 语句3;

……

else 语句n+1;

例如:从键盘上输入字符,判别其分类:控制符、数字、大写字母、小写字母、其他字符。

#include “stdio.h”

main( )

{ char c;

c=getchar( );

if (c< 32) printf(“This is a control character.\n”);

else if (c>=‘0’&&c<=‘9’) printf (“This if 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 charater.\n”);

说明:

1、三种形式的 if 语句中,if 关键字后均为表达式(逻辑表达式、关系表达式、赋值表达式、变量等); 如:if (a=5) 语句; if (b) 语句;

?2、if 语句中,条件表达式必须用括号括起来,在语句后必须加分号;

?满足条件需执行一组语句时,该组语句必须用{ }括起来;如:if (a+b>c&&b+c>a&&a+c>b) { s=0.5*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); printf(“area=%6.2f\n”,area); } else printf(“It is not a trilateral.”);

?3、if 语句嵌套时,else 总是与它最靠近的if 匹配;如:有一数学函数:x<0时,y=-1;x=0时,y=0;x>0时,y=1编写程序,输入x的值,输出相应y的值

?main( )

{ int x,y;

scanf(“%d”,&x);

if (x<0) y=-1;

else if (x= =0) y=0;

else y=1;

printf(“x=%d,y=%d\n”,x,y);}

??说明:因为if 语句执行时总是简单地测试其中作为条件的“表达式”的值是0还是非0,便可利用这种特性来简化程序设计。如对于:

if (expression!=0)

完全可用 if (expression) 来代替;

同理: if(!exp)语句;等价于:if(exp= =0) 语句;

二、三目条件运算符及其表达式

1、条件运算符:?:

2、格式:e1?e2:e3

3、语义:判e1的值,为1时计算e2,否则计算e3;

如:max=(a>b)?a:b 等价于 if (a>b) max=a;

else max=b;

4、说明:

条件运算符的结合方向自右至左如:a>b?a:c>d?c:d

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值