第四章 选择结构程序设计授课老师,危孟君
Email,weimengjun@163,com
C语言程序设计 (第 2版 )
中南大学出版社成奋华、陆惠民 著
A
B
顺序结构顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的。
语句执行的顺序就是书写的顺序。
以前学过的,
我们一起来回忆:条件表达式
一般形式,表达式 1? 表达式 2,表达式 3
例 if (a>b)
printf(“%d”,a);
else
printf(“%d”,b);
printf(“%d”,a>b?a:b);
表达式 1
表达式 2 表达式 3
非 0 =0
选择型程序设计 ——if语句 (条件选择语句)
if语句 最简单 形式
格式,if (表达式 ) 语句
执行过程:
例,if (x>y)
printf(“%d”,x);
真(非 0)
假( 0)表达式语句
先对表达式求解,若表达式的值不为 0,则执行语句,否则不执行如,if(3) printf("OK");
说明:
if后面的表达式类型任意 (包括整型、实型、字符型)
语句可以是多个操作语句,此时要用{}将几个语句括起来,成为一个复合语句。
例 考虑下面程序的输出结果,
#include <stdio.h>
main()
{ int x,y;
scanf("%d,%d",&x,&y);
if(x>y)
x++; y++;
printf("%d,%d\n",x,y);
}
不能实现预想的效果
#include <stdio.h>
main()
{ int x;
printf(“请输入一个整数,");
scanf("%d",&x);
if(x<0) x= -x;
printf("%d",x);
}
例 用户输入一个整数,输出它的绝对值。
运行:请输入一个数,-12?
12
程序分析:
输入是可能是正数,0或者负数,如果输入的是正数或者 0的话,原样输出,如果是负数的话,
要输出他的相反数。
练习:输入两个实数,按从小到大的顺序输出。
程序分析:
输出两个数 a,b,
如果 a<b,原样输出如果 a>b,则要交换 a,b,再输出。
main ( )
{
float a,b,t;
scanf ("%d,%d",&a,&b);
if (a>b)
{t=a; a=b; b=t; }
printf (“%d,%d",a,b);
}