您好,欢迎访问三七文档
C语言概述1、为什么学习C语言1)C的起源和发展第一代语言:机器语言01代码第二代语言:汇编语言就是简单的助记符ADD第三代高级语言:结构化语言(面向过程)C,Fortran用于科学计算Basic演变为VB,Pascal用于教学。面向对象(OO)C++,java(SUN改造过),C#(微软改造的),后两种都是针对C++改造的。因为C++比较复杂。结构化语言有缺陷:数据和操作分离。如果你学会C++那么剩下都不用学了。因为它都包括了面向过程和对象2)C的特点优点:代码量小(WPS)速度快功能强大(写操作系统)缺点:危险性高:(同样的程序java中就会报错)可以随便写开发周期长:因为它是面向过程语言,10万行代码以上容易崩溃可移植性不强:因为java的可移植性太强了。C的话两台机器跑起来可能不一样。3)C的应用领域系统软件开发:操作系统:三大驱动程序:主板驱动、显卡驱动、摄像头驱动数据库:DB2,Oracle,Sqlserver应用软件:办公软件:WPS图形图像多媒体:ACDSee,PS,MediaPlayer嵌入式软件开发:智能手机,掌上电脑游戏开发:2D,3D游戏(CS整个引擎都是纯C。魔兽不是4)C的重要性有史以来最重要的语言所有大学工科理科学生必修课程系统软件都是用它开发合格黑客必须掌握程序员必须熟练大企业、外企招聘必考为数据结构,C++,java,c#做准备2、怎样学习C语言每一讲分四次课前两节课为理论课,讲授理论知识后两节课为上机课,在机房完成当堂练习要去:当堂练习必须在两节上机课中完成机房随时有辅导老师辅导老师检查后方可离开途径:多思考,多上机目标:能看懂程序,能调试程序,自学能力要很强其实就是犯错误的过程,肯定会有错误,全都出完了,就学好了。参考资料:谭浩强《C语言程序设计》清华绝对入门经典(就是自己能看懂)《CPrimerPlus》人民邮电60元语法《C和指针》人民邮电65元在想变成高手看:《C专家编程》绝版《C陷阱与缺陷》人民邮电30元3、学习的目标了解程序语言及发展历史熟练掌握C语言的语法规则掌握简单的算法理解面向过程的思想,这非常有助于将来对面向对象思想的学习能看懂程序会调试程序掌握将大问题转化为一系列小问题来求解的思想为将来学习C++,数据结构,C#,java打下良好的基础4、常见问题答疑1、学习java为什么建议先学C语言a)学习C就是学java,因为C语言至少80%的语法知识都被java继承过来了。b)C是面向过程语言的代表,学好C有助于学习java中面向对象的思想c)学好C中的指针是理解java中引用的基础!如果不懂指针就不可能对java中的引用由深刻的理解,而引用是java中一个最基本但又十分重要的概念。2、没学过计算机专业课程能够学懂C语言有郝斌老师在怕什么?3、英语和数学不好能学好C么?如果懂更好,如果不懂不影响对其的学习。数学知识只有在你研究高深算法的时候才需要。5、课程计划共23讲C语言简介第一讲基本编程知识1讲第二讲数据类型1讲第三讲运算符和表达式1讲第四讲流程控制4讲第五讲函数2讲第六讲数组1讲第七讲指针4讲第八讲变量的作用域和存储方式1讲第九讲扩展数据类型1讲第十讲专题:字符串的处理1讲进制转换1讲补码1讲动态内存分配1讲综合应用:链表的使用2讲6、举例子:一元二次方程C语言编程预备知识1、cpu内存条硬盘显卡主板显示器之间的关系2、HelloWorld程序如何运行起来的3、什么是数据类型编程受限就要考虑数据,怎样去保存它,就和数学上的数字一样基本数据类型:整数:整型int4短整型shortint2,长整型longint8【浮点数(计算机内不能定点存储)】实数单精度浮点数float4双精度浮点数double8字符char复合类型数据:(把基本类型复合起来)结构体枚举共用体4、什么是变量方便找到一个和空闲内存单元一一对应的代码。避免了程序员自己去找空闲单元的编号,由操作系统完成。变量的本质就是内存中的一段存储空间。5、cpu内存条VC6操作系统之间的关系VC6向操作系统请求在内存中开辟一段内存,VC在使用这些内存完成程序运行6、变量为什么要初始化所谓初始化就是赋值的意思。那个很大的值其实是填充字很大真实的值是随机值,是上一个软件使用过遗留下的,这个很大的填充值就是为了提醒你这个值未被初始化。7、如何定义变量8、什么是进制9、常量在C语言中是如何表示的10、常量是以什么样的二进制代码存储在计算机中的tips:1、html是借助于浏览器运行的2、C语言编写好的代码是借助于VC6运行的3、要想改变dos框的属性,右键单击标题栏4、机器语言速度最快,最慢高级语言,C又比java,C#快5、Basic在计算机中有简化的意思6、B语言写出了世界上第一个操作系统UNIX,光盘就有十几张很大主要用在大型机、商务机。因为其稳定,不可能用Windows,因为容易挂,不稳定。7、B语言的创始人的同事扩充了B得到了C语言并且用此写了UNIX第五版这个系统流行了起来所以C语言也流行了起来。UNIX开源的,你要改就要学习C语言。8、C语言中必学的是函数和指针。94年C99标准一直用到今天9、金山公司一直最挣钱的就是WPS。政府订购。他的一个强大功能是可以转成pdf格式的,microoffice没有此功能。10、WPS安装包很小,因为它是用C语言写的内核。11、三大操作系统windows(内核用C外壳用C++),unix和linux都是用C写的。因为它很快。硬件由操作系统控制。以前在dos下可以直接控制硬件,现在必须通过操作系统。12、C可以访问硬件,指针。java没有指针。13、招聘现在基本分三块:c/c++,java,c#.前者工资最高。14、蠕虫病毒,C语言有个gets()函数,他是向硬盘写东西,无长度限制后来就改用fgets()有了限制,这样就不上了漏洞。15、世界上绝大多数病毒都只能破换软件,只有一个能破换硬件的。16、也可以用C语言编一个木马,它是背地里运行的,慢慢地就死机了17、学数据结构最好用C语言学习18、入门最基本的方法就是C语言入手。当你成为C语言的高手,那么你就很容易进入到操作系统的平台里面去;当你进入到操作系统的平台里面去实际做程序时,就会懂得进行调试;当你懂得调试的时候,你就会发现能轻而易举地了解整个平台的架构。这时候,计算机基本上一切都在你的掌握之中了,没有什么东西能逃得出你的手掌心。-----《编程箴言》梁肇新,超级解霸作者19、王爽写的汇编的入门书也不错20、C语言32个关键字作为保留。不能重做其他定义。21、哲学是你对于世界的思考,数学又是其他一切学科的计算基础。22、函数可以体现出面向对象和面向过程的区别。23,任何语言的流程都是一样的。24、动态内存分配学过之后才能理解数据结构。25、VC6完全兼容C,所以你就选C++SourceFile26、先把硬盘上的数据存放在内存条上然后cpu在处理,因为它不能直接处理硬盘数据。27、主板就相当于为大家提供了一个怎样互相配合的环境28、点感叹号的那个标志是运行.exe,这个是有cpu运行的。所有的运行都是cpu29、在VC6中输入的字符和在记事本中是无区别的,通过编译链接产生exe30、win98winme是可以直接控制硬件的(编程序)。2000以后就只能操作系统控制31、C的一个核心思想就是不限制程序员编写他想编写的内容。32、C里面是没有这样一个数据类型来直接存放字符串的,C++和java都有33、出错的位置和原因不一定就是真的,有可能在上下行找34、我们硬件上的状态肯定是0、1不可能存在第三种状态,重启就是全0.35、内存释放是指使用权限被收回36、软件在运行期间,该软件所占空间不再分配给其他软件,当软件运行完毕之后,操作系统将收回该内存空间,以便在分配给其他软件使用。37、
本文标题:郝斌老师C大纲笔记
链接地址:https://www.777doc.com/doc-5743058 .html