本人初学C语言,如果有什么不对或者不合适的地方,欢迎批评指正,不胜感激。
本文主要简单介绍可以表示算法的几种方法。
1. 流程图法
除了很简单的问题,一般不用自然语言表示算法。我们推荐使用流程图表示算法。
流程图表示算法,直观形象,易于理解。
常用流程图说明:
将【例 1】求5!的算用流程图表示。
将【例 2】的算用流程图表示。
将【例 3】判定闰年的算用流程图表示。
在C语言中,有三种基本的程序结构:顺序结构、选择结构和循环结构。
顺序结构:
选择结构:
循环结构:
三种基本结构的共同特点:
只有一个入口;
只有一个出口;
结构内的每一部分都有机会被执行到;
结构内不存在“死循环”。
2.用N-S流程图表示算法。
1973年美国学者提出了一种新型流程图:N-S流程图。
顺序结构:
选择结构:
循环结构:
3.用计算机语言表示算法。
我们的任务是用计算机解题,就是用计算机实现算法;用计算机语言表示算法必须严格遵循所用语言的语法规则。
如:
【例 1 】求1×2×3×4×5用C语言表示。
#include <stdio.h>
int main(void){
int i,t;
t=1;
i=2;
while(i<=5){
t=t*i;
i=i+1;
}
printf("%d",t);
return 0;
}
【例2】求级数的值。
#include <stdio.h>
int main(void){
int sigh=1;
float deno=2.0,sum=1.0,term;
while(deno<=100){
sigh= -sigh;
term= sigh/ deno;
sum=sum+term;
deno=deno+1;
}
printf("%f",sum);
return 0;
}
总结,结构化程序设计方法
自顶向下;
逐步细化;
模块化设计;
结构化编码。