欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    1-第一章c语言概述概述.ppt

    • 资源ID:3457224       资源大小:658.02KB        全文页数:50页
    • 资源格式: PPT        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    1-第一章c语言概述概述.ppt

    C语言程序设计,授课教师:刘 佳,联系方式: 地址:高层三楼 教师机房 QQ: 1006558538,教材与课时安排,教材 C语言程序设计 乌云高娃、温希东、王明福编著 高等教育出版社 课时安排 授课 :132学时,推荐参考资料,C语言程序设计林小茶编著 中国铁 道出版社 C程序设计(第二版)谭浩强著 清华大学出版社 C语言程序设计黄锐军 编写 人民邮电出版社 C语言基础教程张晓蕾主编 人民邮电出版社,项目一:商人货币交换问题,请编制程序实现,来解决以下问题: 古时候有两个商人,一个赵国人,一个秦国人,要进行货币交换,那时候秦国还没有统一六国,货币还不一样,二个秦国货币铜钱等价于三个赵国的货币铜钱,现在这个赵国人手上有18个赵国铜币,秦国人手上有20个秦国铜币,请问如何用程序来模拟两个商人交换货币的过程。,涉及到的知识点如下:,单元一:初识C语言程序 单元二:基本字符、标示符和关键字、数据 类型及常量、变量 单元三:数据的格式化输出语句 单元四:数据的格式化输入语句 单元五:运算符与表达式 单元六:数据交换的设计与实现,单元一:初识C语言程序,程序算法基础,软件编程规范,编译预处理,开发能力最强,应用最广泛 操作系统开发、应用程序开发、单片机程序开发、网络程序设计 专业水平的试金石 各种专业考试首选程序设计语言:研究生入学考试、程序员考试、等级考试 后续主干课程的重要基础 数据结构、数据库程序设计、Java程序设计、可视化程序设计、网络编程、单片机开发,1.1 C语言发展历史 为什么从C语言开始,如何学习C语言编程?,编程似写作 先学“字词句”和“语法”,目标是“写作”。 学习数据类型、控制结构、语法规则等 学语句 掌握程序分析、算法与编程 写文章 仅仅读书是不够的 程序是编出来的,程序是调出来 在编程实践中消化知识。 没有天生的程序员 初学者:有点难。 没有学不会的,只有学不精的除非自己放弃。 青出于蓝胜于蓝:超过你的老师完全可能。 循次渐近很重要 阅读/分析程序摹仿编程掌握常见程序模块简单程序复杂编程 仅是起点,而非终点 从此编程与你相伴而行真正的程序员从此起步。,程序与程序设计语言,程序 日常生活中的“程序”是指完成某一件事情的工序,或者一系列的步骤。 计算机来说,程序就是由计算机指令构成的序列。计算机按照 程序中的指令逐条执行,就可以完成相应的操作。 实际上程序需要人来编写,使用的工具就是程序设计语言。,程序设计语言的发展,CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减,用助记符号描述的指令系统 如 ADD A, B,面向机器的语言,C语言等等,JAVA 、 C+ 、 VB 、VC、 DELPHI,C语言程序设计 第一章 C语言概述,C语言发展过程 产生背景 产生过程 时间:19721973 地点:美国贝尔实验室 目的:UNIX操作系统 设计人: Ken.Thompson和Dennis.M.Ritchie C标准 78年标准C: K&R合著The C Programming Language ANSI C: 1983年 87 ANSI /ISO C: 1987年 1990年国际标准的ANSI C 1994年 ISO修订了 C,称ISO C,C语言程序设计 第一章 C语言概述,1.2 C语言特点 语言简洁、紧凑、灵活 运算符和数据类型丰富 程序设计结构化、模块化 生成目标代码质量高 可移植性好 同时具备高级语言和低级语言的特征 有大量的库函数,C语言程序设计 第一章 C语言概述,32个关键字:(由系统定义,不能重作其它定义) auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigned union void volatile while,C语言程序设计 第一章 C语言概述,9种控制语句: if( )else for( ) while( ) dowhile( ) continue break switch goto return,C语言程序设计 第一章 C语言概述,例 C语言与Pascal语言比较 C语言 Pascal语言 含义 BEGIN.END 复合语句 if(e) s; IF(e) THEN s 条件语句 int i ; VAR i:INTEGER 定义i为整型变量 int a10; VAR a:ARRAY110 OF INTEGER int f(); FUNCTION f():INTEGER int *p; VAR p:INTEGER i+= 2; i=i+2 赋值i+2i i+,+i; i=i+1 i自增值 结论:C比 Pascal简练,源程序短。,C语言程序设计 第一章 C语言概述,34种运算符: 算术运算符:+ - * / % + - 关系运算符: = != 逻辑运算符:! && | 位运算符 : | & 赋值运算符:= 及其扩展 条件运算符:?: 逗号运算符:, 指针运算符:* & 求字节数 :sizeof 强制类型转换:(类型) 分量运算符:. - 下标运算符: 其它 :( ) -,C语言程序设计 第一章 C语言概述,C语言程序设计 第一章 C语言概述,1.3 简单C程序介绍 例1.1 第一个程序 Hello,World!,/* example1.1 The first C Program*/ #include main() printf(“Hello,World!”); ,C语言程序设计 第一章 C语言概述,输出: Hello,World!,例1.2: /* Example for add program */ #include main ( ) int a, b, sum; /*这是定义变量*/ a=123; b=456; /*给变量赋值*/ sum=a+b; /*求两个数之和*/ printf(“a+b= %dn“, sum); ,运行结果: a+b=579,例1.3,/* example1.1 calculate the sum of a and b*/ #include /* This is the main program */ main() int a,b,sum; a=10; b=24; sum=add(a,b); printf(”sum= %dn“,sum); /* This function calculates the sum of x and y */ int add(int x,int y) int z; z=x+y; return(z); ,运行结果: sum=34,C语言程序设计 第一章 C语言概述,格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式,C语言程序设计 第一章 C语言概述,main( ) . . . . ,main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,sum); ,优秀程序员的素质之一: 使用TAB缩进 对齐 有足够的注释 有合适的空行,结构特点 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,不能嵌套 不产生编译代码,例: /*This is the main /* of example1.1*/ */,编译预处理命令,C语言程序设计 第一章 C语言概述,例:# include ,1.4 C程序的上机步骤 C程序开发步骤,file.exe,C语言程序设计 第一章 C语言概述,程序代码的录入, 生成源程序*.c,语法分析查错,翻译 生成目标程序*.obj,与其它目标程序或库 链接装配,生成可执行 程序*.exe,C程序开发步骤 源程序(.c) 目标程序(.obj)可执行程序(.exe) (你编写的) 编译 (中间产品) 连接 (你出售的) compile link,File1.c,File1.obj,File1.exe,File1.c stdio.h 整合,库函数,编译预处理,编译,连接,C语言程序设计 第一章 C语言概述,WIN-TC开发环境,WIN-TC集成开发环境,C语言程序设计 第一章 C语言概述,1.5 程序算法基础,程序设计的基本流程,用计算机解决某一个问题。例如,求三个数的和。,算法 :为解决一个问题而采取的方法和步骤,就称为算法 (注意:有一些列的步骤或者动作),对计算机来讲“程序”就是为让计算机完成特定任务而设计的指令序列。,程序设计语言: C、JAVA、Delphi、VisualBasic等,最原始方法: 步骤1:先求1×2,得到结果2。 步骤2:将步骤1得到的乘积2乘以3,得到结果6。 步骤3:将6再乘以4,得24。 步骤4:将24再乘以5,得120。 这样的算法虽然正确,但太繁。,【例1.5.1】求1×2×3×4×5,算法设计,改进的算法: S1: 使t=1 S2: 使i=2 S3: 使t×i, 乘积仍然放在在变量t中,可表示为t×it S4: 使i的值+1,即i+1i S5: 如果i5, 返回重新执行步骤S3以及其后的S4和S5;否则,算法结束。 如果计算100!只需将S5中 若i5改成i100即可。,如果改求1×3×5×7×9×11,算法也只需做很少的改动: S1: 1t S2: 3i S3: t×it S4: i+2t S5:若i11, 返回S3,否则,结束。 该算法不仅正确,而且是计算机较好的算法,因为计算机是高速运算的自动机器,实现循环轻而易举。 思考:若将 S5写成:若i11, 返回S3;否则,结束。,【例1.5.2】有50个学生,要求将他们之中成绩在80分以上者打印出来。,如果,n表示学生学号,ni表示第个学生学 号;g表示学生成绩,gi表示第个学生成绩; 则算法可表示如下: S1: 1i S2: 如果gi80,则打印ni和gi,否则不打印 S3: i+1i S4:若i50, 返回S2,否则,结束。,润年的条件: 能被400整除 不能被400整除,但是能被4整除,不能被100整除的年份;,【例1.5.3】判定2000 2500年中的每一年是否闰年,将结果输出。,设y为被检测的年份,则算法可表示如下: S1: 2000y S2:若y能被400整除,则输出y“是闰年” S3:若y不能被400整除,进入下一步S4 S4:如果不能被4整除则输出y“不是闰年”,否则,进入第五步S5 S5:如果能被100整除,则输出y“不是闰年”,否则说明不能被100整除,则输出y“是闰年” S6:y+1y S7:当y2500时, 返回S2继续执行,否则,结束。,分析:从键盘输入的三个数值必须用三个变量来保存,假定这三个变量分别为a、b、c,另外,还需要一个变量min来装最小的那个数。 先比较a和b的值,把数值小的放入min中,再将min与C比较,又把数值小的放入min中。 经过两次比较,min中已存放的是a,b,c三个数中最小的数,把min的值输出就是所需结果。,【例1.5.4】从键盘输入三个数,找出其中最小的那个数。,算法步骤:,1输入三个数,其值分别赋给三个变量a,b,c。,2把a与b中较小的那个数放入变量min中。,3把c与min中较小的那个数放入变量min中。,4输出最后结果min的值。,细化后的算法步骤为:,1输入三个数,其值分别赋给三个变量a,b,c。 2比较a与b的值,如果ab, 则min=a; 否则min=b。 3比较c与min的值,如果cmin, 则min=c。 4输出最后结果min的值。,算法描述,算法可采用自然语言、流程图、NS图、PAD图、伪代码等方法来描述。,流程图,流程图是用不同的几何图来代表不同性质的操作,用流程线来指示算法的执行方向,所有的流程图用一带箭头的流程线相连。,常用的流程图符号:,三种结构的流程图,一顺序结构 如:右图 语句的执行顺序为:ABC,二选择结构,(a)的执行顺序为:先判断条件,当条件为真时,执行A,否则执行B。 (b)的执行顺序为:先判断条件,当条件为真时,执行A,否则什么也不执行。,三循环结构,例1.5.4流程图,1.6软件编程规范,软件产业不是江湖,程序员不同于武林人士,我们不崇拜邪派高手,按照规范编写程序可以帮助程序员写出高质量的程序。,作用:对源程序编译之前做一些处理,生成扩展名为.c源程序 种类 宏定义 #define 文件包含 #include 格式: “#”开头 占单独书写行 语句尾不加分号,1.7C语言的编译预处理,文件包含 功能:一个源文件可将另一个源文件的内容全部包含进来 一般形式: #include “文件名” 或 #include ,处理过程:预编译时,用被包含文件的内容取代该预处理命令,再对“包含”后的文件作一个源文件编译,例如: /* file1.c */ /* file2.c */ #include “file2.c” max(int x, int y) main() int z; int a,b,c; z=xy?x:y; scanf(“%d,%d”, ,运行程序时,在编译前执行预处理命令, 结果为: max(int x, int y) int z; z=xy?x:y; return(z); main() int a,b,c; scanf(“%d,%d”, ,宏定义#define命令,不带参数宏定义 一般形式: #define 宏名 字符串 功能:用指定标识符(宏名)代替字符串,如 #define YES 1 #define NO 0 #define PI 3.1415926 #define OUT printf(“Hello,World”);,定义位置:任意(一般在函数外面) 作用域:从定义命令到文件结束 #undef可终止宏名作用域 格式: #undef 宏名,例【1.7.1】,例 #define PI 3.14 main() r=2.0; area=PI*r*r; #undef PI #define PI 3.1415 max() r=2.0; area=PI*r*r; ,PI原作用域,PI新作用域,带参数宏定义 一般形式: #define 宏名(参数表) 字符串,例 #define S (r) PI*r*r 相当于定义了不带参宏S,代表字符串“(r) PI*r*r”,宏展开:形参用实参换,其它字符保留 宏体及各形参外一般应加括号(),例 #define S(a,b) a*b area=S(3,2); 宏展开: area=3*2;,不能加空格,例 #define POWER(x) x*x a=4; b=6; z=POWER(a+b); 宏展开:z=a+b*a+b; 一般写成: #define POWER(x) (x)*(x) 宏展开: z=(a+b)*(a+b);,

    注意事项

    本文(1-第一章c语言概述概述.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开