c语言2013课件-(第1讲).ppt_第1页
c语言2013课件-(第1讲).ppt_第2页
c语言2013课件-(第1讲).ppt_第3页
c语言2013课件-(第1讲).ppt_第4页
c语言2013课件-(第1讲).ppt_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

1、C 语言,主讲教师: 王凤英 联系方式教 研 室:智能化教研室,教材、参考书与课时安排,教材 C程序设计与应用 C程序设计与应用实验指导及习题 参考书 C程序设计(第三版) 谭浩强 清华大学出版社 C语言程序设计教程 谭浩强 高等教育出版社 C程序设计试题汇编 谭浩强 清华大学出版社 课时安排 40学时+8(上机),熟记C语言的基本概念 熟悉VC与 Turbo C的上机操作环境 会读、会编、会调试C程序 学习要点 熟记C语言的语法 学会算法分析与算法设计,课程目的,课程要求,课前请做好预习 保持课堂安静,头脑清醒,思维活跃 认真、独立、按时完成并提交作业 重视上机实践

2、,有效利用宝贵的上机时间,第1章 C程序设计概述,第2章 数据类型与表达式,第3章 顺序结构,第4章 选择结构,第5章 循环控制,第6章 数组,第7章 函数,第8章 指针,第9章 结构体与共用体,第10章 文件,教学内容,C语言程序的基本结构,运行C语言程序的步骤与程序开发环境,算法,第1章 C程序设计概述,程序设计的基本概念,C语言简介,结构化程序设计思想和方法,程序 程序设计 程序设计语言,1.1 程序设计的基本概念,机器语言,高级语言,汇编语言,CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减,用助记符号描述的指令系统,可进行地址、位操作 如

3、ADD A, B 编写系统软件,直接对硬件操作,可读性,移植性差,面向机器的语言,可读性,移植性好,编写应用程序 一般较难实现汇编语言的某些功能 如:地址和位的操作,C语言兼有高级和低级语言的功能 适合写系统软件和应用软件 又称中级语言,程序设计语言的发展,C语言的发展历史,1.2 C语言简介,C语言的诞生,C语言的发展,C语言的成熟,C语言发展过程 产生背景 ALGOL 60CPL语言BCPLB语言,写UNIX系统 产生过程 时间:19721973 地点:美国贝尔实验室 目的:UNIX操作系统 设计人: Ken.Thompson和Dennis.M.Ritchie C标准 标准C: 1978年

4、 K ,输出: This is a c program.,例1.1 第一个程序This is a c program .,printf语句中的“n”是换行符,例1.2求俩个数的和,/* example1.1 calculate the sum of a and b*/ #include /* This is the main program */ void main() int a,b,sum; /*定义变量*/ a=10; b=24; sum=add(a,b); printf(”sum= %dn,sum); /* This function calculates the sum of x a

5、nd y */ int add(int x,int y) int z; z=x+y; return(z); ,运行结果: sum=34,printf语句中的“ %d ”是表示“十进制整数类型”,例1.3 从键盘输入两个整数,输出其中较大的数,#include void main() int max(int x,int y) int a,b,c; scanf(“%d,%d”, ,scanf语句中“ sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,sum); ,优秀程序员的素质之一: 使用TAB缩进 对齐 有足够的注释

6、 有合适的空行,C语言程序的编写要求 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main(),可以放在程序中任一位置 一个C程序必须从main开始执行,在main中结束,其它函数通过嵌套调用得以执行。 函数由函数的首部和函数体构成。,例: /*This is the main /* of example1.1*/ */,C语言程序的编写要求 开头多个include “” 程序的开头可以定义全局变量 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,不能嵌套 不产生编译代码,例: /*This is the main /* of example1.

7、1*/ */,1.4 运行C语言程序的步骤与程序开发环境 C程序开发步骤,file.exe,程序代码的录入, 生成源程序*.c,语法分析查错,翻译 生成目标程序*.obj,与其它目标程序或库 链接装配,生成可执行 程序*.exe,Turbo C集成开发环境 配置要求 UNIX,PC-DOS,MS-DOS,UCDOS操作系统 硬盘容量约2M,448K RAM运行空间 安装Turbo C 创建子目录 Install 若不是可安装盘,将文件拷贝到对应的目录下,进入Turbo C D:TCTC.exe 主控菜单 文件操作FILE :New Load Save Write to 编辑操作EDIT:插入/

8、修改 块 查找/替换 编译链接COMPILE LINK MAKE 执行RUN 退出Turbo C Alt +x Alt+F ,Q 帮助Help F1 Ctrl+F1,基本操作: F10-调用主菜单 F2-存盘 F3-打开 F1-帮助信息 Alt+F9-Compile Ctrl+F9-Run Alt+F5-User Screen Alt+X -退出Tc,常用热键,文本编辑: -移动光标 PgUp,PgDn-上下翻页 Ctrl+PgUp,Ctrl+PgDn-文件首尾 Home行首 End行尾 Ddelete Insert Bkspace,块操作: Ctrl+KB-块开始标记 Ctrl+KK-块结束

9、标记 Ctrl+KC-块拷贝 Ctrl+KV-块移动 Ctrl+KY-块删除 Ctrl+KH-块隐藏,程序调试: F8-Step over F7-Trace into F4-Goto Cursor Ctrl+F7-Add Watch Ctrl+F8-Toggle Breakpoint Ctrl+F2-Program Reset,窗口操作: F5-窗口缩放 F6-窗口切换,VC+6.0 集成开发环境 建立自己的文件夹 启动VC+ 新建文件 编辑和保存 编译 连接 运行 关闭工作区 查看源文件,算法概述,算法表示,算法的特性,结构化程序设计的思想和方法,1.5 程序的灵魂算法,程序包括的内容: 数

10、据结构:数据的类型和组织形式 算法:操作步骤的描述,Nikiklaus Wirth提出:,新的提法,程序,=算法+数据结构+程序设计方法+语言工具和环境,灵魂,加工对象,工具,算法的概念 为解决一个问题而采取的方法和步骤,就成为算法。例如:歌曲的乐谱,建造房子等。 算法核心是解决“做什么”和“怎么做”的问题。 可以有多种方法,一般采用简单和运算步 骤少的。准确、高效,简单算法举例,例1:求1X2X3X4X5 最原始的方法: S1:先 求12, 得结果2。 S2: 将S1步得到的结果再乘以3, 得结果6。 S3: 将S2步得到的结果再乘以4, 得结果24。 S4: 将第S3步得到的结果再乘以5,

11、 得120。即最后结果。 思考: 如果按照此方法,求123.100,要写多少步? 上述计算方法不可取!,99步!,改进的方法(或通用的方法): 先设两个变量p和i,p代表被乘数,i代表乘数。并且将每一步乘积直接放入被乘数变量p中。用循环算法求结果。 S1:令p=1 S2:令i=2 S3:使p x i,并将乘积放入p中。通常表示为 p i = p S4:使 i 的值加1,表示为 i+1= i S5:如果i5 ,返回到S3继续向下执行;否则算法结束。 p中的值即最后结果。,思考: 如何采用此方法求100!,先设两个变量p和i,p代表被乘数,i代表乘数。并且将每一步乘积直接放入被乘数变量p中。用循环算法求结果。 S1:令p=1 S2:令i=3 S3:使p i,并将乘积放入p中。通常表示为p i = p S4:使 i 的值加2,表示为 i+ 2 = i S5:如果i 13,返回到s3继续向下执行;否则 算法结束。p中的值即最后结果。,如果将题目改为求1 x 3 x 5 x 7 x 9 x 11x 13,该如何设计算法?,思考:,采用前面的方法如何求579.21.,例2:有两个数a,b,按大小顺序打印它们。 S1: 输入a,b的值; S2: 如果ab,则先打印a,再打印b

温馨提示

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

评论

0/150

提交评论