c语言的三种基本结构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
该语句是合法的:if(3) printf(“ok!”);
⑵ if 语句中的“语句”为一个简单语句或复合语句。
如:下面程序段是否有错?
if (x>=0)
if (x>=0)
printf(“X is positive.”);
{ printf(“X is positive.”);
x++;
x++;
else
} else
else printf(“x>0,y<=0");
else
else if(y>0)
if (条件3)语句3
else 语句4
内嵌if
printf(“x<=0,y>0"); else
printf(“x<=0, y<=0”);
说明:
else与if的匹配原则是:一个else应与其之前距 离最近且没有与其它else配对的if 配对。
程序2:将程序1的if语句改为: /*exp52.c*/ #include <stdio.h> main ( ) { int x, y; scanf(“%d", &x); if (x>=0)
if (x>0) y=1;
else y=0;
else y=-1;
printf ("x=%d, y=%d\n", x, y); }
printf(“X is negative.”); printf(“X is negative.”);
二、if 语句的嵌套
在 if 语句中又包含一个或多个if 语句称
为 if 语句的嵌套。
一般形式:
如:
if (条件1)
if(x>0) if(y>0)
if (条件2)语句1
else 语句2
内嵌if
printf("x>0,y>0");
F
已证明: 上述三种结构组成的程序可以解决全部 的问题,所以任何一种高级语言都具备上述三种结构。
4.2 C 语句
Leabharlann Baidu
C程序语句可分为五大类:
1. 表达式语句 赋值语句:
如: i=i+1;
i++; x+y;
函数调用语句: 如: printf ("…");
空语句: 任何事情都不做。 如: ;
2. 控制语句––改变语句的执行顺序
如:if (grade>=85) level=‘A’; else if (grade>=70) level=‘B’; else if (grade>=60) level=‘C’; else level=‘D’;
if 语句说明:
⑴ if后面的表达式一般为逻辑表达式或关系表 达式,也可以是任意数值类型表达式。
程序3:将程序1的if语句改为: /*exp53.c*/ #include <stdio.h> main() { int x,y; scanf(“%d",&x); y=-1; if(x!=0)
if(x>0) y=1;
else y=0;
printf("x=%d,y=%d\n",x,y); }
程序1: /*exp51.c*/ #include <stdio.h> 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); }
K=K1 K=K2
K=Kn
A1 A2 … Ai … An
3. 循环结构
有两种结构:当型和直到型 (1) 当型结构
当P条件成立时(T),反复执行A,直到P为“ 假” 时才停止循环.
F
P
表示为
T
A
P为T A
(2) 直到型
先执行A, 再判断P,若为F,再执行A,如此反复, 直到P为F.
A A
T P
直到P为F
(非零)时,执行语句, 否则,不执行语句。
如: if ( x > y ) z = x;
2. if (表达式) 语句1 else 语句2
执行过程: 当表达式的值为“真”
(非零)时,执行语句1, 否则,执行语句2。
如: if (x>y) z=x ; else z=y ;
3. if (表达式1) 语句1 else if(表达式2) 语句2 else if(表达式3) 语句3 : else if(表达式m) 语句 m else 语句n
if (n>6) if (n<12) printf(“6<n<12”);
else printf(“n<=6”);
if (n>6) {
if (n<12) printf(“6<n<12”);
} else
printf(“n<=6”);
三、用if 语句实现选择结构举例
-1 ;x<0 例: 求 y = 0 ;x=0 输入x 值,输出y值。
4.无条件转移语句 goto
5. 终止程序运行语句 exit
6. 复合语句(语句体)
用{ } 括起来的一系列语句。 如: { z=x+y; t=z/100; printf ("%f", t); }
4.3 选择结构程序设计
一、if 语句的三种形式 1. if (表达式) 语句
执行过程: 当表达式的值为“真”
if ( ) ~ else ~ (条件)
switch
(多分支选择)
for ( ) ~ (循环) while ( ) ~ (循环)
do ~ while (循环) ( )表示条件, ~表示语句
3. 限定转向(无条件转向)语句
continue break
(结束本次循环) (中止整个循环)
return
( 函数返回)
§4.1 C程序三种基本结构
从结构化程序设计角度出发,程序只有三种结构: ·顺序结构 ·选择结构 ·循环结构
1. 顺序结构 先执行A, 再执行B.
A 表示 A B
B
2. 选择结构 存在某条件P, 若P为真,则执行A, 否则执行B。
TP F
A
B
表示为
TP F AB
另一种选择结构––多分支结构.
K
1 ;x>0
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",x,y); }
main() {
float a,b,c; scanf(“%f%f%f”,&a,&b,&c); if(a>b) { t=a;a=b;b=t;} if(a>c) {t=a;a=c;c=t;} if(b>c) { t=b;b=c;c=t;} printf(“%5.2f,%5.2f,%5.2f”,a,b,c); }