C语言程序设计基本概念

上传人:飞****9 文档编号:143967090 上传时间:2020-09-04 格式:PPT 页数:41 大小:629.50KB
返回 下载 相关 举报
C语言程序设计基本概念_第1页
第1页 / 共41页
C语言程序设计基本概念_第2页
第2页 / 共41页
C语言程序设计基本概念_第3页
第3页 / 共41页
C语言程序设计基本概念_第4页
第4页 / 共41页
C语言程序设计基本概念_第5页
第5页 / 共41页
点击查看更多>>
资源描述

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

1、04.09.2020,任课教师:许创,1,C语言,任课教师介绍 副教授 手机:692211 E-mail: 网站: FTP:10.10.152.105,04.09.2020,任课教师:许创,2,上机习题,CH1EX3: 调试程序,找出其中错误并改正。 CH2ABS: a, b是任意输入的两个整数,计算 a+|b|,并显示计算结果。 CH2CVS: 输入一个华氏温度F,输出对应的摄氏温度。公式为:c=5/9(F-32) 练习:2.6 2.7 2.8,04.09.2020,任课教师:许创,3,第1章 C语言程序设计基本概念,了解C语言的历史和特点 熟悉计算机语言的不同类型 了解C语言的结构 理解C

2、语言程序的开发过程 了解算法的概念 了解结构化程序设计方法,学习目标,04.09.2020,任课教师:许创,4,C语言的特点 语言简洁、紧凑,使用方便、灵活 运算符丰富,具有多种运算功能 有丰富的数据类型 生成代码质量高,程序执行效率高 C程序的可移植性好 是一种结构化程序设计语言 语法限制不严,程序设计自由度大 C提供的位运算可直接对硬件操作,04.09.2020,任课教师:许创,5,程序设计语言 人与计算机进行信息交流的工具 机器语言 汇编语言 高级语言 面向过程语言 (C、PASCAL等) 面向对象语言 (JAVA、C+等) 甚高级语言 (尚在开发),04.09.2020,任课教师:许创

3、,6,机器语言 1、与计算机硬件的设计密切相关 (无移植性) 2、是计算机能直接识别的语言 3、由一组二进制0和1序列构成,【例】计算 4+8 取数 1011 0000 0000 0100 将4送累加器 加 0000 0100 0000 1000 8与累加器中的4相加 停机 1111 0100,特点:繁琐、难记、难读、难写、不可移植,04.09.2020,任课教师:许创,7,汇编语言 1、与计算机硬件的设计密切相关 2、计算机不能直接识别 3、计算机基本操作是采用英语缩写的助记符来编写程序,【例】计算 4+8 MOVE AL, 4 将4 送累加器 ADD AL, 8 8 与累加器中的 4相加

4、HLT 停机,04.09.2020,任课教师:许创,8,汇编程序: 将汇编语言程序转换为计算机能识别的机器语言,04.09.2020,任课教师:许创,9,高级语言 基本与计算机的硬件设备无关,【例】计算4+8(用C语言编写) sum=4+8;,编译程序: 高级语言转换为机器语言的翻译程序,04.09.2020,任课教师:许创,10,简单的C程序实例,运行结果: Welcome to C programming.,【例1-1】 /第一个C程序 #includestdio.h void main() /* 函数头 */ printf(Welcome to C programming.n); ,注释

5、,头文件,主函数、注释,系统提供的输出函数,04.09.2020,任课教师:许创,11,【例1-2】编写求三数中最大值问题的程序,#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); ,void main() int x, y, z, maxx; scanf(%d%d%d, ,输入:8 5 7 输出:max=8,04.09.2020,任课教师:许创,12,C语言程序的构成 C程序由函数组成 每个函数完成相对独立的功能 C提供了丰富的

6、库函数 每个C程序都有一个叫做main的主函数 main( )后面花括号内的部分叫函数体 函数体含“说明部分”和“执行部分” 说明部分和执行部分各由若干语句组成 语句以分号为结束标记,04.09.2020,任课教师:许创,13,C函数的一般形式 函数类型 函数名(形式参数表) 说明、定义部分 函数执行部分 ,04.09.2020,任课教师:许创,14,Niklaus Wirth 提出的著名公式: 数据结构+算法 = 程序 什么是算法? 对特定问题求解方法和步骤的一种描述。 算法的两大要素: 操作 控制结构 算法解决的问题: 做什么 如何做,算法,04.09.2020,任课教师:许创,15,算法

7、的特性: 1. 有穷性 2. 确定性 3. 有效性 4. 有零个或多个输入 5. 有一个或多个输出 描述算法的工具: 自然语言 伪代码 流程图 NS图 等等,04.09.2020,任课教师:许创,16,【例】求三个数中最大值问题,自然语言: 日常使用的语言 先将a,b进行比较,找出其中的大数;然后再把它和第三个数c进行比较,如果它比c大,则它就是最大数,否则c是最大数。,伪代码: 介于自然语言和计算机语言之间的文字和符号进行描述,IF ab THEN max=a ELSE max=b IF maxc THEN 输出 max ELSE 输出 c,04.09.2020,任课教师:许创,17,流程图

8、: 传统图语言表示法 ANSI规定了一些常用的流程图符号:,起止框 输入输出框 判断框 处理框 流程线 连接圈,【例】酱油与醋的问题:试用自然语言描述如何将酱油与醋互换位置的过程。,04.09.2020,任课教师:许创,18,三个数中最大值问题的流程图(图1-4),04.09.2020,任课教师:许创,19,N-S图(结构化流程图): 图语言表示法 三个数中最大值问题的 N-S图(图1-5),04.09.2020,任课教师:许创,20,结构化程序设计方法,结构化程序设计的基本方法: 自顶向下,逐步求精,将复杂问题分解为若干的独立的小问题(小模块)。,【例】求解两个数的平均值 1、分解:问题分解

9、为三个模块 : S1: 输入两个数a, b S2: 求两个数的平均值赋给aver S3:输出平均值,04.09.2020,任课教师:许创,21,2、实现方法,算法细化 S1: 调用输入函数,完成输入 S2: 设计一个求解平均值的函数averge( ) S3: 调用输出函数,完成输出,3、C 语言实现主函数的编程 /求两个数的平均值 void main() /主函数 float a, b, ave; /声明a、b和ave为实型变量 scanf(%f%f, /输出ave的值 ,04.09.2020,任课教师:许创,22,4、逐步求精:设计averag(float x,float y)函数的算法(设

10、两个参数为float x,float y) S2.1 :把x加y的和除2的值送给aver S2.2 :把aver的值返回给主函数。,5、C 语言实现averag(float x,float y)函数的编程 #include float average(float x, float y) /求两个数的平均值 float aver; /声明aver为实型变量 aver=(x+y)/2; /计算两个数的平均值赋给aver return (aver); /aver的值作为函数的的返回值 ,04.09.2020,任课教师:许创,23,6、两模块连接成一个完整的求解程序 #include float av

11、erage(float x, float y) /求两个数的平均值 float z, aver; /声明aver为实型变量 aver=(x+y)/2; /计算两个数的平均值赋给aver return (aver); /aver的值作为函数的的返回值 void main() /主函数 float a, b, ave; /声明a、b和ave为实型变量 scanf(%f%f, /输出ave的值 ,04.09.2020,任课教师:许创,24,用自然语言描述: S1: 输入两个整数x, y S2: 交换x, y 细化S2: S2.1:将x赋给t S2.2:将y赋给x S2.3:将t赋给y,相应的程序段:

12、 /输入x、y scanf(%d%d, ,【例1-3】设计两整数交换的算法,04.09.2020,任课教师:许创,25,两数交换的另一个奇特难懂的算法: S1: 输入两个整数x, y S2: 将x+y赋给x S3: 将x-y赋给y S4: 将x-y赋给x 相应的程序段: scanf(%d%d, ,04.09.2020,任课教师:许创,26,【例】对于一个大于3的整数,判断它是不是素数(循环之例) 算法如下: 1. 输入n 2. i=2 3. n被i除,得余数r 4. 若r=0,则输出n“不是素数”,算法结束 5. i=i+1 6. 若in/2,则重新执行3. ;否则执行7. 7. 输出n“是素

13、数”,算法结束,04.09.2020,任课教师:许创,27,结构化程序的三种基本控制结构: 顺序结构 选择结构(if_else) 循环结构(while, repeat_until),顺序结构:,流程图,N-S图,先执行A操作, 再执行B操作。,04.09.2020,任课教师:许创,28,选择结构:,流程图,N-S图,当P 条件成立 (为真T)执行A 否则 (为假 F)执行B,04.09.2020,任课教师:许创,29,循环结构1(while ):,流程图,N-S图,当P条件成立 (为真 T)反复执行A, 直到P为 假时结束。,04.09.2020,任课教师:许创,30,循环结构2(repeat

14、_until),流程图,N-S图,先执行A操作,再判断P,若为假,再执行A,直到P为 真时结束。,04.09.2020,任课教师:许创,31,三种基本结构的共同特点: 1)单入口 2)单出口 3)无死语句 4)无死循环,顺序,选择,循环,04.09.2020,任课教师:许创,32,C程序的编辑、编译和执行,编辑:利用编辑器,通过键盘将C源程序输入到计算机,并以文件形成保存到磁盘。 编译:利用编译器,将C源程序编译成目标程序。 连接:利用连接器,将C已编译的目标程序和库函数连接之后,生成可执行文件,并以文件形成存入到磁盘上,文件扩展名为 .exe。 运行: 在操作系统下运行可执行文件。,04.0

15、9.2020,任课教师:许创,33,上机实践 运行环境turbo C (2.0或3.0) 编辑录入、修改 编译翻译为二进制代码(obj) 连接连接各模块的二进制代码,生成可执行文件(exe) 运行运行程序,04.09.2020,任课教师:许创,34,Turbo C 2.0上机环境简介,四个最主要菜单 File 创建新文件、打开文件、保存文件、改变目录、退出系统 Edit 切换到编辑状态 Compile 编译、连接成目标文件或可执行文件 Run 自动编译、连接并运行,04.09.2020,任课教师:许创,35,Turbo C 3.0上机环境简介,五个最主要菜单 File 创建新文件、打开文件、保存文件、改变目录、退出系统 Edit 常用编辑命令 Compile 编译、连接成目标文件或可执行文件 Run 自动编译、连接并运行 Windows 窗口切换,04.09.2020,任课教师:许创,36,可用快捷键打开菜单 如按+F 可打开文件菜单 输入程序前一般应先改变好目录 File/Change dir 先编译、后保存、再运行 在3.0版本,可用鼠标,在多程序窗口环境下可选Windows-Next命令作窗口切换,04.09.2020,任课教师:许创,37,Turbo C 常用编辑命令,上翻一屏 下翻一屏 移到行首 移到行尾 QR移到文件首 QC移到文件尾,04.09.2020,任课教

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

当前位置:首页 > 商业/管理/HR > 经营企划

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