计算机计算机二级C语言_第1页
计算机计算机二级C语言_第2页
计算机计算机二级C语言_第3页
计算机计算机二级C语言_第4页
计算机计算机二级C语言_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三讲C程序流程设计

3.'语句概述

3.2程序的二种基术结构

3.3诜择型程序设计

3.4循环型程序设计

3.5辅助棒制语句

1

3.1C语句概述

•C语句:以“;”作分隔符,编译后产生机器指令.

•C语句分类\\/

•表达式语句:表达式加分号构成。

如total=total+limit;分支

a=3;

func();if()〜else〜

printf(uHello,world!\nv);switch

循环for()~

while(

ido~while()

continue

break

goto

辅助控制return

2

3.2程序的三种基本结构

•结构化程序设计

•基本思想:任何程序都可以用三种基本结构表示,限制使用无条件转移语

句(goto)

•结构化程序:由三种基本结构反复嵌套构成的程序叫〜

•优点:结构清晰,易读,提高程序设计质量和效率

•却基本结构\/\/

•顺序结构

5

3.3选择型程序设计

•if语句(条件选择语句)

•if语句的三种形式expr

_:\

“非。

•格式:if(expression)

\sta

enstatement

执行过程:

Jk例:if(x>y)

printf("%d”,x);=0

expr

statement1;♦*

elsestatementlstatement2

statement2;

♦执行过程:

例:if(x>y)max=x;

elsemax=y;

7

选择型程序设计形式•形式三:if(exprl)statement1;

elseif(expr2)statement2;

elseif(expr3)statements;

♦执行过程

statementn_

例:if(salary>1000)index二金领;

elseif(salary>800)index二白领;

elseif(salary>600)index二粉领;

elseif(salary>400)index二灰领;

elseindex二蓝领;

statemnt1statemnt2statemnt3statemntn

8

♦语句可以是复合语句

乂□:if(a二二Lx3八二二v)printf("a二b,x=y");

if⑶printf("OK");

iff)nrintff'a');

例考虑下面程序的输出结果:

^include<stdio.h>

voidmain()

{intx,y;

scanf(“%d,%d“,&x,&y);

if(x>y)

x=y;y=x;

else

x++;y++;

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

9

s

t

^

z-

^

-F

-1E①g①

2sQIU

u①U①

①①心

Q户

UuIP

①i①。nQ

(S

zI4cQd户

』I①PSP

d2-*Q

xSS

。BCqQ

)u-

-t-s>①

Js(

I①z(

(Qj

z)dda

户x

ds①x

x)①。①

。S)S

①(』fjI

sz①i。

R1d•»I-

I8x

)①

S

JI

I①

JJ

IJ

留K

-、<0

-U(

Q(寸

一UzO

^B2u

UuS①

le①s

ses-Q

(o①

pI

Zq(q

aA

1J.mcAdp

sUq

dpB』Ss

xAsd

。SOx

•①Qo①

谭)

JS

冬jI

i(cdI。

E.q

一Ds

X一X

。。

))①

s

JJ

IIo

例输入两数并判断其大小关系

#include<stdio.h>

voidmain()

{intx,y;

printf(''Enterintegerx,y:〃);

scanf(〃%d,%d",&x,&y);

if(x!=y)运行:Enterintegerx,y:12,23^H

if(x>y)printf(,,X>Y\n,z);X<Y

elseprintf(,,X<Y\n,/);Enterintegerx,y:12,6|

elseX>Y

printf(〃X二二Y\n");Enterintegerx,y:12,12

X二二Y

11

ifelse配对原则:

①从最内层开始,else总是与它上面最接近的(未曾配对的)if配对。/

②避免if与else配对错位的最佳办法是加大括号,同时,为了便于阅读,使用适当的缩进。

(只有大括号能保证if和else不错位配对,缩进仅便于阅读)。

(if(……)

rif(……)

Cif(……)

“lse….

blse……

else***...

12

实现if~else正确配对方法:加]{}

switch语句(开关分支语句)

♦:♦一般形式:

达式)

switcheEf:

语句组1;

break;

表达式IseE2:

2;

case语句组

1,break;

E1E2Endefault

iseEn:

语句组2n

语句组1语句组语句组语句组n;

break;

■■

lefault:

语句组;

break;]

♦:♦执行过程:14

说明:

•El,E2,…En是常量表达式,且值必须互不相同

•语句标号作用,必须用break跳出

•case后可包含多个可执行语句,且不必加{}

•switch可嵌套

•多个case可共用一组执行语句

如:……

case'A':

case'B':

case'C':

printf(uscore>60\n,>);

break;

例子(1)

例#include<stdio.h>

voidmain()

{intscore=5;

switch(score)

{case5:printf("Verygood!”);

case4printf(“Good!");

case3printf(“Pass!”);

case2printf(“Fail!”);

defaultprintf("dataerror!”);

运行结果:score为5时,输出:

Verygood!Good!Pass!Fail!dataerror!

16

例子(2)根据输入字母输出字符串

/*ch4_5.c*/

#include<stdio.h>

voidmain()

{intc;

printf(''Entermornorhorother:");

c=getchar();

switch(c)

{case'm':printf(〃\nGoodmorning!\n,");break;

case'n':printf(〃\nGoodnight!\n〃);break;

case'h':printf(〃\nHello!\n〃);break;

default:printf(,,\n????????\n,/);break;

}

3.4循环型程序设计

•概述

C语言可实现循环的语句:

①用goto和if构成循环

②while语句

③dowhile语句

④for语句

•goto语句及用goto构成循环

•goto语句一般格式:

goto语句标号;

••••••

标号:语句;

18

循环型程序设计(1)

♦:♦功能:无条件转移语句

♦:♦说明:

,不能用整数作标号

,只能出现在got。所在函数内,且唯

,只能加在可执行语句前面

•限制使用goto语句

19

While语句特点和说明

♦:♦特点:先判断表达式,后执行循环体

♦:♦说明:

•循环体有可能一次也不执行

,循环体可为任意类型语句

•下列情况,退出while循环

♦羊件表达式不成立(为零)

循环体内遇break,return,goto

・无限循环:while(l)

循环体;

21

100

例子用while循环求yn

#include<stdio.h>

voidmain()循环条件

{inti,sum=0;

i=l;

while(i<=100)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论