收藏 分享(赏)

C语言 1.ppt

上传人:hwpkd79526 文档编号:7321753 上传时间:2019-05-14 格式:PPT 页数:43 大小:1.18MB
下载 相关 举报
C语言 1.ppt_第1页
第1页 / 共43页
C语言 1.ppt_第2页
第2页 / 共43页
C语言 1.ppt_第3页
第3页 / 共43页
C语言 1.ppt_第4页
第4页 / 共43页
C语言 1.ppt_第5页
第5页 / 共43页
点击查看更多>>
资源描述

1、第1章 程序设计ABC,C语言大学实用教程,参考书与课时安排,参考书 苏小红,陈惠鹏,孙志岗,等. C语言大学实用教程(第2版). 电子工业出版社,2007.2 苏小红,孙志岗,等. C语言大学实用教程学习指导. 电子工业出版社, 2007.4 课时安排 授课 :50学时 综合编程训练:20学时,课程要求,课前请做好预习 保持课堂安静,头脑清醒,思维活跃 认真、独立、按时完成作业 重视上机实践,有效利用宝贵的上机时间,第1章 程序设计 ABC 第2章 数据类型、运算符与表达式 第3章 简单的 C 程序设计 第4章 程序的控制结构 第5章 函数 第6章 数组 第7章 指针 第8章 结构体和共用体

2、 第10章 文件操作 复习总结 (2学时) 备注:第9章函数的高级应用,第11章C 程序设计常见错误,留作学生自学。,课程内容,第一章 程序设计ABC,计算机行业的梦想,计算机行业的梦想 与人自然交流,像人一样地思考 人工智能(Artificial Intelligence)图灵测试 1950年,英国数学家A.M.Turing在思想(mind)杂志上发表“计算机与人工智能”一文,提出判定机器是否具有智能的测试方法,计算机行业的梦想,博弈被认为是智能活动,AI之初主要研究下棋程序 1997年,IBM公司研制的深蓝超级计算机在一场“人机大战”中打败了国际象棋大师卡斯帕罗夫 被誉为“人工智能的一大胜

3、利” 世界排名第二的棋手印度人阿南得说: 这是一个像人的机器和一个像机器的人之间的战斗 深蓝的主要研制者之一许峰雄博士: 胜利靠的只是不知疲倦地高速运算,并不是什么智能 深蓝中输入了近200万棋谱,什么是计算机?,硬件(hardware) 键盘、鼠标、显示器、硬盘、DVDs、内存、CPU 硬件成本下降很快 摩尔定律 每过18个月微芯片的集成度翻一番,而芯片价格保持不变 软件(software) 运行于计算机之上的程序(Program) 如何降低软件开发成本?,很像厨师的菜谱,定义了执行某个任务所需的步骤 但不幸和不同的是,你不能使用你自己的母语来写Code,什么是程序设计语言?,什么是程序设计

4、语言?,计算机能读懂的语言 机器语言(Machine Language)由一系列二进制0和1组成 机器语言编写的1+1程序低级语言,10111000 00000001 00000000 00000101 00000001 00000000,像不像天书?,CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加10010000 减,用助记符号描述的指令系统 如 ADD A, B,面向机器的语言,程序设计是数据被加工的过程,客观世界可以分类,对象是类的实例 对象是数据和方法的封装 对象间通过发送和接受消息发生联系,程序设计关键是定义类,并由类派生对象,什么是程序设计语言?,PRINT

5、 1+1,结果显示在屏幕上,#include main() printf(“%dn“, 1+1); ,程序设计语言(programming language) BASIC语言编写的1+1程序C语言编写的1+1程序既不是英语,也非机器语言但更像英语 高级语言比写机器语言程序容易,但比使用英语难,什么是程序?,编写程序源代码(Source Code)的人 程序员(Programmer)计算机、程序员、程序之间的关系 如果计算机是乐队,那么程序员就是指挥家,程序就是乐谱。 如果计算机是军队,那么程序员就是总司令,程序就是作战计划。,怎样让计算机读懂高级语言?,编译器(Compiler) 把源代码转换

6、为可被计算机理解的机器代码把机器代码以可执行文件(Executable File)的形式保存在磁盘上一种程序设计语言对应一种编译器,怎样让计算机读懂高级语言?,程序员按照该语言的语法编写程序源代码 把自己的意图写入源代码中 编译器读入源代码 把程序员的意图转换成可执行程序,供他人使用,C语言,可执行程序,编译器,怎样让计算机读懂高级语言?,程序设计语言是人与计算机进行交流的语言 有很多种,分别适合做不同的事情现在人还只能主动学计算机的语言 做不到计算机学会人的语言当计算机懂了人的自然语言,就几乎不再需要编程,想让计算机干什么,尽管对着它说好了,那时程序员可能也就失业了。,程序是如何运行的?,计

7、算机把机器代码读入到内存(Memory) 由CPU运行这些代码 读取输入(Input) 产生输出(Output) 完成程序员预定的功能 计算机专业后续课程 计算机原理 编译原理 操作系统,程序开发步骤,What is to be done?,可执行文件 扩展名为.exe的文件,How is it to be done?,扩展名为.c的文件(对C而言),扩展名为.obj的文件,计算机为什么用二进制呢?,为什么不用我们日常熟悉的十进制呢? 二进制在在电器元件中容易实现 二进制的加法运算规则22=4条;十进制102=100条 计算机进行二进制运算比进行十进制运算简单 1946年,冯.诺伊曼在计算机中

8、引入二进制,提出著名的冯.诺伊曼结构,至今仍被采用,被誉为“计算机之父”,“冯诺依曼机”结构,大脑,记忆装置,眼睛和耳朵,高级语言的魅力,易学、易用、易读、易懂、强大、可移植 百家争鸣,据不完全统计2500种,绝大多数是高级语言 http:/people.ku.edu/nkinners/LangList/Extras/langlist.htm可看到其列表和简介 影响最大、寿命最长的是C语言 程序设计语言数以千计,能广为流传的不过几十种,能够风光20年的更是屈指可数,有最好的编程语言吗?,能很好的解决问题的语言就是好语言。 Fortran已问世50年,仍然是科学计算首选 C语言辉煌30年,至今老

9、当益壮 C+已度过其20岁生日,相信属于它的日子还很长很长 在最恰当的地方,最恰当的时候,选择最恰当的语言,同时防止跌入语言自身的陷阱。,C程序设计语言,是一种高级语言 高级语言并不是“高级”,只是相对低级语言,在一个高的级别上进行编程 历史悠久,战勋卓著 诞生于上世纪70年代初,成熟于80年代 1989“ANSI C”标准的发布是C语言成熟的标志 很多重量级软件都是用C写的 上天入地,无所不能 几乎没有不能用C写出来的软件,没有不支持C的系统,C程序设计语言,C语言被分类为高级语言,但实际上它是一种介于高级语言和低级语言之间的语言。 很多流行语言、新生语言都借鉴了它的思想、语法 从C+,到J

10、ava,再到C# 正确地学好C语言,是学习这些流行语言的基础。,C程序设计语言的地盘,以往的擅长: 与操作系统和基础工具有关的编程任务 操作系统核心,设备驱动程序,系统工具,网络应用,编辑器,字处理工具,编译器,某些图形和GUI应用,以及数据库应用 未来的发展: 高性能、实时中间件,嵌入式领域,并发程序设计等,怎样学好编程?,学习编程最好的方法之一就是阅读源代码 多读书,积累编程技巧 擅于利用身边的工具与环境 学习编程的秘诀是:编程,编程,再编程 !,优秀程序员的基本素质,扎实的基础。 数据结构、离散数学、编译原理 程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过

11、头来学学这些最基本的理论。 不要一开始就去学面向对象程序设计(OOP),即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。,优秀程序员的基本素质,丰富的想象力。 不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案。,优秀程序员的基本素质,不滥用技巧 技巧的优点:能另辟蹊径的解决问题 缺点:不为人所熟知,可读性差,容易留下隐患 滥用技巧不是锦上添花,而是画蛇添足失败的技巧常被讽刺为“伎俩”卖油翁的故事,优秀程序员的基本素质,不钻牛角尖。 当你遇到障碍的时候,不妨暂时远离电脑,看看窗外的风景,听听轻音乐,和朋友聊聊天。 让负责编程的那部分大脑细胞就得到充分的休息。 当重新开

12、始工作的时候,我会发现那些难题现在竟然可以迎刃而解。,优秀程序员的基本素质,韧性和毅力。 这也许是“高手“和一般程序员最大的区别。 高手们并不是天才,他们是在无数个日日夜夜中磨练出来的。 成功能给我们带来无比的喜悦,但过程却是无比的枯燥乏味。 你不妨做个测试,找个10000以内的素数表,把它们全都抄下来,然后再检查三遍,如果能够不间断地完成这一工作,你就可以满足这一条。,优秀程序员的基本素质,严谨的思维,优秀程序员的基本素质,良好的编程风格,规范化编程。 养成良好的习惯,代码的缩进,变量的命名规则要始终保持一致。 不要忽视对注释的排错。 注释是程序的一个重要组成部分,它可以使你的代码更容易理解

13、 而如果代码已经清楚地表达了你的思想,就不必再加注释了 如果注释和代码不一致,那就更加糟糕,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 un

14、ion void volatile while,9种控制语句: if( )else for( ) while( ) dowhile( ) continue break switch goto return,34种运算符: 算术运算符:+ - * / % + - 关系运算符: = != 逻辑运算符:! & | 位运算符 : | & 赋值运算符:= 及其扩展 条件运算符:?: 逗号运算符:, 指针运算符:* & 求字节数 :sizeof 强制类型转换:(类型) 分量运算符:. - 下标运算符: 其它 :( ) -,C程序格式和结构特点 例1.1 第一个程序 Hello,World!,/* exam

15、ple1.1 The first C Program*/ #include main() printf(“Hello,World!”); ,输出: Hello,World!,格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式,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( ) int i , j , sum

16、; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,sum);,结构特点 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,不能嵌套 不产生编译代码,例: /*This is the main /* of example1.1*/ */,编译预处理命令,C程序的上机步骤 C程序开发步骤,程序代码的录入, 生成源程序*.c,语法分析查错,翻译生成目标程序*.obj,与其它目标程序或库链接装配,生成可执行程序*.exe,编辑,编译,链接,执行,作业,习题1 1.1,1.4,1.5,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报