文档介绍:C程序设计
Programming in C
西安电子科技大学计算机学院张淑平
这次课的主要内容
goto语句
循环结构
while语句
do...while语句
goto语句
goto语句称为无条件转向语句,其一般形式为:
goto 语句标号;
其中,语句标号是个标识符
if (i <= 100) {
s = s + i;
i = i + 1;
}
printf(“%d”,s);
Y
N
S← S+I
I<=100?
I ← I+1
输出S的值
if (i > 100) goto LP;
s = s + i;
i = i + 1;
goto语句可用来表示流程图中流程线所表示的含义
printf(“%d”,s);
LP:
语句标号
p
A
a
b
循环结构2(until)
回顾循环结构
p
A
成立
不成立
a
b
循环结构1(while)
直到型循环结构(Until型循环) 如图循环结构2所示
当型循环结构(while型循环)
重复地判断条件p,若成立,则执行计算A;条件p不成立时,终止该重复过程,如图循环结构1所示
1+2=3
3+3=6
6+4=10
10+5=15
...
4851+99=4950
4950+100=5050
重复地进行相加运算
本次的和作为下一次相加运算的被加数
加数有规律地变化
0+1=1
令S表示被加数(初始值为0),令I表示加数(初始值为1)
进行100次加法后结束,或者当加数大于100时结束
最后,S的值表示计算结果
计算1+2+...+100
Y
N
I ← 1
S ← 0
S← S+I
I<=100?
输出S的值
开始
结束
I ← I+1
A
B
C
A
B
C
循环结构示例:1+2+...+100
Y
N
I ← 1
S ← 0
I<=100?
S← S+I
输出S的值
开始
结束
I ← I+1
A
B
C
用goto语句和if语句构造循环结构
if (i <= 100) {
}
loop:
goto loop;
s = s + i;
i = i + 1;
计算1+2+...+100的程序
#include <> /*程序功能:计算1+2+...+100并输出结果*/
main()
{
int i, s = 0;
i = 1;
loop:
if (i <= 100) {
s += i; i++;
goto loop;
}
printf(" %d\n ",s);
}
尽量避免使用goto语句
结构化的程序设计技术:限制goto语句的使用,因为滥用goto语句,将会导致程序结构无规律、可读性差。
每种高级程序设计语言都会提供描述循环结构的语句
C的循环语句
C语言提供了描述循环计算的语句:
while语句
do...while语句
for语句
学习循环结构程序设计就是掌握以上语句的使用方法