语言程序设计基本概念

上传人:tia****nde 文档编号:67701608 上传时间:2019-01-08 格式:PPT 页数:40 大小:624.01KB
返回 下载 相关 举报
语言程序设计基本概念_第1页
第1页 / 共40页
语言程序设计基本概念_第2页
第2页 / 共40页
语言程序设计基本概念_第3页
第3页 / 共40页
语言程序设计基本概念_第4页
第4页 / 共40页
语言程序设计基本概念_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《语言程序设计基本概念》由会员分享,可在线阅读,更多相关《语言程序设计基本概念(40页珍藏版)》请在金锄头文库上搜索。

1、1,第一章 C语言程序设计基本概念,2,学习目标,了解C语言的历史和特点 熟悉计算机语言的不同类型 了解C语言的结构 理解C程序的开发过程 了解结构化程序设计方法,3,主要内容,C语言的发展历史以及特点 程序设计语言 简单的C程序实例 C语言程序的结构 C程序的编辑、编译和执行 算法 结构化程序设计方法 课堂练习,4,C语言的发展历史,历史悠久,战勋卓著 诞生于上世纪70年代初,成熟于80年代 “ANSI C”标准的发布是C语言成熟的标志 很多重量级软件都是用C写的 上天入地,无所不能 几乎没有不能用C写出来的软件,没有不支持C的系统,5,C语言特点,语言简洁紧凑,使用灵活方便 32个关键字,

2、9种控制语句 介于高级语言和低级语言之间的语言。 从C+,到Java,再到C# 运算符丰富 34种运算符 +、-、*、%、+、- 等 可以实现其他高级语言难以实现的运算,6,数据结构类型丰富 标准数据类型:整型、实型和字符型; 构造类型:数组、结构体、共同体、指针 生成的代码质量高 可移植性强 结构化语言 主要结构函数, 实现模块化设计 结构化的控制语句,支持多种循环结构,C语言特点,7,程序设计语言,程序设计语言 人与计算机进行信息交流的工具。,大致可分为三类 机器语言 汇编语言 高级语言,8,程序设计语言,机器语言 1、计算机硬件的设计密切相关 2、计算机能直接识别的语言 3、由一组二进制

3、0和1序列构成,例如,计算 4+8 取数 1011 0000 0000 0100 将4 送累加器 加 0000 0100 0000 1000 8 与累加器中的 4相加 停机 1111 0100,繁琐的,难记、难读、难写,9,程序设计语言,汇编语言 1、计算机硬件的设计密切相关 2、计算机是不能直接识别, 3、计算机基本操作的采用英语缩写编写程序,例如,计算 4+8 MOVE AL, 4 将4 送累加器 ADD AL, 8 8 与累加器中的 4相加 HLT 停机,10,程序设计语言,汇编程序: 将汇编语言程序转换为计算机能识机器语言,,11,11,程序设计语言,高级语言 基本与计算机的硬件设备无

4、关,例如 计算4+8(C语言编写) Sum=4+8;,编译器: 高级语言转换为机器语言的翻译程序,12,12,简单的C程序实例,【例1-1】 /第一个C程序 #include main() printf(“Welcome to C programmingn“); return 0; ,执行结果 : 屏幕上显示 Welcome to c programming,行注释,头文件,主函数,编译系统提供的输出函数,程序结束返回函数,13,简单的C程序实例,【例1-2】编写求三数中最大值问题的程序,#include int max_value(int a, int b,int c) int max; i

5、f(ab) max=a; else max=b; if(maxc) max=c; return (max); ,main() int x,y,z,maxx; scanf(“%d%d%d“, ,14,C语言程序的结构,C语言是由函数构成的,至少有一个且仅有一个main的函数,称主函数。除main函数外,其它函数都是在执行main函数时被调用执行的。,#include int max_value(int a, int b,int c) int max; if(ab) max=a; else max=b; if(maxc) max=c; return (max); main() int x,y,z,

6、maxx; scanf(“%d%d%d“, ,在程序中main()函数的位置可以任意。,在调用库函数之前必须将相应的头文件包含在本程序中。通常放在源程序或源文件的最前面。,15, C语言程序的结构,/求三个数中最大值 #include int max_value(int a, int b,int c) int max; if(ab) max=a; else max=b; if(maxc) max=c; return (max); main() int x,y,z,maxx; scanf(“%d%d%d“, ,严格区分大小写英文字母。习惯使用小写字母。 ;为语句的终止符。 表示程序的结构层次范围

7、, 必须配对使用。 注释格式 /注释内容 行注释 /*注释内容*/,16, C程序的编辑、编译和执行,编辑:利用编辑器,通过键盘将C源程序输入到计算机,并以文件形成存入到磁盘上。 编译:利用编译器,将C源程序编译成目标程序。 连接:利用连接器,将C已编译的目标程序和库函数连接之后,生成可执行文件,并以文件形成存入到磁盘上,文件扩展名为 .exe。 运行: 在操作系统下运行可执行文件。,17,算法,算法解决问题的流程 必须具备以下五个特性 有穷性 确定性 有效性 (可行性) 没有输入或有多个输入 有一个或多个输出,18,算法,算法的描述 自然语言 伪码 流程图 N-S图,例1:求三个数中最大值问

8、题,19,算法,自然语言: 日常使用的语言 先将a,b两个数进行比较,找出其中的大数,然后再把它和第三个数c进行比较,如果它比c大,则它就是最大数,否则c是最大数。,20,算法,流程图: 图语言表示法 ANSI规定了一些常用的流程图符号:,流程图,起止框 输入输出框 判断框 处理框 流程线 连接圈,21,算法,三个数中最大值问题的流程图 图1-4,22,算法,N-S图: 图语言表示法 三个数中最大值问题的 N-S图,23,算法,算法仅仅提供了解决某类问题可采用的方法和步骤,还必须使用某种计算机程序设计语言根据算法的描述去实现,即编程。,/求三个数中最大值 #include int max_va

9、lue(int a, int b,int c) int max; if(ab) max=a; else max=b; if(maxc) max=c; return (max); main() int x,y,z,maxx; scanf(“%d%d%d“, ,24,算法,例2:求解两个自然整数的最大公约数 采用 “欧几里得算法”, 又称 辗转相除法 1、自然语言描述 S1:输入两个正整数M和N; S2:比较M和N,如果M小于N ,则两数交换,保证M是大数; S3:求M除以N的余数R; S4:使M=N,即用N代替M; S5: 使N=R,即用R代替N, S6: 如果N0,转向S3; S7: 如果N=

10、0,转向S8; S8: 输出M,M为M和N的最大公约数。,25,算法,2、伪代码描述: INPUT M,N IF MN THEN 交换M和N WHILE N0 DO R=MOD(M,N) M=N N=R END DO 输出 M 其中M除以N的余数用符号MOD(M,N)表示。,26,算法,3、流程图描述,27,算法,4、 N-S图描述,28,结构化程序设计方法,结构化程序设计的基本方法: 自顶向下,逐步求精 复杂问题分解为若干的独立的小问题(小模块),例:求解两个数的平均值 1、分解:问题分解为三个模块 S1: 输入两个数a,b S2: 求两个数的平均值赋给aver S3:输出平均值,29,结构

11、化程序设计方法,2、实现方法,算法细化 S1: 调用输入函数,完成输入 S2: 设计一个求解平均值的函数averge( ) S3: 调用输出函数,完成输出,3、C 语言实现主函数的编程 /求两个数的平均值 main() /主函数 float a,b,ave; /声明a、b和ave为实型变量 scanf(“%f%f”, /输出ave的值 return 0; ,30,结构化程序设计方法,4、逐步求精:设计averag()函数的算法。 设两个参数为float x,float y。 S2.1 :把x加y的和除2的值送给aver S2.2 :把aver的值返回给主函数。,5、C 语言实现averag()

12、函数的编程 #include float average(float x,float y) /求两个数的平均值 float z,aver; /声明aver为实型变量 aver=(x+y)/2; /计算两个数的平均值赋给aver return (aver); /aver的值作为函数的的返回值 ,31,结构化程序设计方法,6、两模块连接成一个完整的求解程序 #include float average(float x,float y) /求两个数的平均值 float z,aver; /声明aver为实型变量 aver=(x+y)/2; /计算两个数的平均值赋给aver return (aver);

13、 /aver的值作为函数的的返回值 main() /主函数 float a,b,ave; /声明a、b和ave为实型变量 scanf(“%f%f”, /输出ave的值 return 0; ,32,结构化程序设计方法,结构化程序设计三种基本控制结构: 顺序结构 选择结构 循环结构(while, repert_until ),33,结构化程序设计方法,顺序结构,N-S图,流程图,执行过程: 先执行A操作,再执行B操作。,34,结构化程序设计方法,选择结构,N-S图,流程图,P为条件: 当P 条件成立 (为真 T)执行A 条件不成立(为假 F)执行B,35,结构化程序设计方法,循环结构(while

14、),当P条件成立 (为真 T)反复执行A, 直到P为 假。,流程图,N-S图,36,结构化程序设计方法,循环结构(repert_until ),流程图,N-S图,先执行A操作,再判断P,若为假, 再执行A,直到P为 真。,37,结构化程序设计方法,三种基本结构的共同特点是: 1)只有一个入口 2)只有一个出口 3)结构内的每一部份都有可能被执行到。 4)结构内不存在“死循环”。,顺序,选择,循环,38,课堂练习一,1、程序设计语言大致可分为三类,分别是 、 和 。 2、 语言是计算机能直接识别的语言。 3、 C语言是由 构成的,至少有一个且仅有一个 的函数,称主函数。 4、 C语言以 为语句的终止符。 5、 表示程序的结构层次范围, 必须 使用。 6、算法可以用多种方式来表示,通常有4种 、 、 、和 。,1、机器语言 汇编语言 高级语言 2、机器语言 3、函数 main 4、; 5、 配对 6、自然语言 伪码 流程图 N-S图,39,课堂练习二,1、结构化程序设计三种基本控制结构分别是 、 和 。 2、三种基本结构的共同特点是: 只有 入口;只有 出口;结构内的每一部份都有可能被执行到;结构内 “死循环”。,1、顺序结构 选择结构 循环结构 2、一个 一个 不存在,40,作业,P11 1.2 1.3 1.4,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号