电脑教程c语言Word文件下载.docx
《电脑教程c语言Word文件下载.docx》由会员分享,可在线阅读,更多相关《电脑教程c语言Word文件下载.docx(20页珍藏版)》请在冰豆网上搜索。
![电脑教程c语言Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-11/17/ce82fbb5-e43d-4ea4-ae7c-3d6568f0c5cd/ce82fbb5-e43d-4ea4-ae7c-3d6568f0c5cd1.gif)
并且他用B语言写了第一个操作系统。
在1972年,美国贝尔实验室的D.M.Ritchie在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。
为了使UNIX操作系统推广,1977年发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。
1978年由(AT&
T)贝尔实验室正式发表了C语言。
同时由B.W.Kernighan和D.M.Ritchie合著了著名的《TheCProgrammingLanguage》一书。
通常简称为《K&
R》,也有人称之为《K&
R》标准。
但是,在《K&
R》中并没有定义一个完整的标准C语言,后来由美国国家标准化协会(AmericanNationalStandardsInstitute)在此基础上制定了一个C语言标准,于一九八三年发表。
通常称之为ANSIC。
K&
R第一版在很多语言细节上也不够精确,对于pcc这个“参照编译器”来说,它日益显得不切实际;
K&
R甚至没有很好表达它所要描述的语言,把后续扩展扔到了一边。
最后,C在早期项目中的使用受商业和政府合同支配,这意味着一个认可的正式标准是必需的。
因此(在M.D.McIlroy的催促下),ANSI于1983年夏天,在CBEMA的领导下建立了X3J11委员会,目的是产生一个C标准。
X3J11在1989年末提出了一个他们的报告[ANSI89],后来这个标准被ISO接受为ISO/IEC9899-1990。
1990年,ISO(InternationalOrganizationforStandards)接受了89ANSIC为ISOC的标准(ISO9899-1990)。
1994年,ISO修订了C语言的标准。
1995年,ISO对C90做了一些修订,即“1995基准增补1(ISO/IEC/9899/AMD1:
1995)”。
1999年,ISO又对C语言标准进行修订,在基本保留原来C语言特征的基础上,针对应该的需要,增加了一些功能,尤其是对C++中的一些功能,命名为ISO/IEC9899:
1999。
2001年和2004年先后进行了两次技术修正。
目前流行的C语言大多是以ANSIC为基础进行开发的,但不同版本的C编译系统所实现的语言功能和语法规则又略有差别。
2011年12月,ISO正式公布C语言新的国际标准草案:
ISO/IEC9899:
2011。
新的标准修提高了对C++的兼容性,并将新的特性增加到C语言中。
新功能包括支持多线程,基于ISO/IECTR19769:
2004规范下支持Unicode,提供更多用于查询浮点数类型特性的宏定义和静态声明功能。
特点
1.C是高级语言。
它把的基本结构和语句与低级语言的实用性结合起来。
C语言可以像一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
2.C是结构式语言。
结构式语言的显著特点是及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。
这种结构化方式可使程序层次清晰,便于使用、维护以及调试。
C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
3.C语言功能齐全。
具有各种各样的,并引入了概念,可使程序效率更高。
而且计算功能、功能也比较强大,可以实现决策目的的游戏。
4.C语言适用范围大。
适合于多种,如Windows、DOS、UNIX等等;
也适用于多种机型。
C语言对编写需要硬件进行操作的场合,明显优于其它高级语言,有一些大型也是用C语言编写的。
特色
指针是C语言的一大特色,可以说是C语言优于其它高级语言的一个重要原因。
就是因为它有指针,可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。
C++在这方面做了改进,在保留了指针操作的同时又增强了安全性,受到了一些用户的支持,但是,由于这些改进增加语言的复杂度,也为另一部分所诟病。
则吸取了C++的教训,取消了指针操作,也取消了C++改进中一些备受争议的地方,在安全性和适合性方面均取得良好的效果,但其本身解释在中运行,运行效率低于C++/C。
一般而言,C,C++,java被视为同一系的语言,它们长期占据着程序使用榜的前三名。
入门
1.一个C语言可以由一个或多个源文件组成。
2.每个源文件可由一个或多个组成。
3.一个源程序不论由多少个文件组成,都有一个且只能有一个,即主函数。
4.源程序中可以有(包括include命令、if命令、pragma命令),预处理命令通常应放在源文件或源程序的最前面。
5.每一个说明,每一个语句都必须以分号结尾。
但预处理命令,和花括号“}”之后不能加分号。
6.,关键字之间必须至少加一个空格以示间隔。
若已有明显的间隔符,也可不再加空格来间隔。
优点
简洁紧凑、灵活方便
C语言一共只有32个,9种,程序书写形式自由,区分大小写。
把高级语言的基本结构和语句与低级语言的实用性结合起来。
C语言可以像汇编语言一样对、和进行操作,而这三者是计算机最基本的工作单元。
运算符丰富
C语言的包含的范围很广泛,共有34种运算符。
C语言把、、等都作为运算符处理。
从而使C语言的运算类型极其丰富,类型多样化。
灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。
数据类型丰富
C语言的数据类型有:
、实型、字符型、数组类型、指针类型、、共用体类型等。
能用来实现各种复杂的的运算。
并引入了指针概念,使程序效率更高。
另外C语言具有强大的图形功能,支持多种和驱动器。
且计算功能、逻辑判断功能强大。
同时对于不同的编译器也有各种
C是结构式语言
结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。
C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
语法限制不太严格,程序设计自由度大
虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。
允许直接访问物理地址,对硬件进行操作
由于C语言允许直接访问,可以直接对进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来写。
生成目标代码质量高,程序执行效率高
一般只比汇编程序生成的效率低10へ20%。
适用范围大,可移植性好
C语言有一个突出的优点就是适合于多种操作系统,如、UNIX、windows98.windowsNT;
C语言具有强大的绘图能力,可移植性好,并具备很强的能力,因此适于编写系统软件,三维,二维图形和动画,它也是数值计算的高级语言。
缺点
1.C语言的缺点主要表现在数据的性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大。
2.C语言的语法限制不太严格,对的类型约束不严格,影响程序的安全性,对不作检查等。
从应用的角度,C语言比其他高级语言较难掌握。
运算
C语言的运算非常灵活,功能十分丰富,运算种类远多于其它。
在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单,但初学者往往会觉的这种表达式难读,关键原因就是对运算符和运算顺序理解不透不全。
当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则显得十分重要。
在学习中,只要我们对此合理进行分类,找出它们与我们在数学中所学到运算之间的不同点之后,记住这些运算也就不困难了,有些运算符在理解后更会牢记心中,将来用起来得心应手,而有些可暂时放弃不记,等用到时再记不迟。
先要明确运算符按不同分类,《C程序设计》运算符可分为15种优先级,从高到低,优先级为1~15,除第2.13级和第14级为从右至左结合外,其它都是从左至右结合,它决定同级运算符的运算顺序.
结构
顺序结构
顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行。
例如:
a=3,b=5,现交换a,b的值,这个问题就好像交换两个杯子水,这当然要用到第三个杯子,假如第三个杯子是c,那么正确的程序为:
c=a;
a=b;
b=c;
执行结果是a=5,b=c=3如果改变其顺序,写成:
a=b;
c=a;
b=c;
则执行结果就变成a=b=c=5,不能达到预期的目的,初学者最容易犯这种错误。
顺序结构可以独立使用构成一个简单的完整程序,常见的输入、计算,输出三步曲的程序就是顺序结构,例如计算圆的面积,其程序的语句顺序就是输入圆的半径r,计算s=3.14159*r*r,输出圆的面积s。
不过大多数情况下顺序结构都是作为程序的一部分,与其它结构一起构成一个复杂的程序,例如分支结构中的复合语句、循环结构中的循环体等。
选择结构
顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。
对于要先做判断再选择的问题就要使用选择结构。
选择结构的执行是依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序。
选择结构的程序设计方法的关键在于构造合适的分支条件和流程,根据不同的程序流程选择适当的选择语句。
选择结构适合于带有关系比较等条件判断的计算,设计这类程序时往往都要先绘制其,然后根据程序流程写出源程序,这样做把程序设计分析与语言分开,使得问题简单化,易于理解。
程序流程图是根据解题分析所绘制的程序执行流程图。
几种基本的选择结构
①if(条件)
{选择体}
这种选择结构中的选择体可以是一条语句,此时“{}”可以省略,也可以是多条语句即复合语句。
它有两条分支路径可选,一是当条件为真,执行分支体,否则跳过选择体,这时选择体就不会执行。
如:
要计算x的,根据绝对值定义,我们知道,当x>
=0时,其绝对值不变,而x<
0时其绝对值是为x的反号,因此为:
if(x<
0)x=-x;
②if(条件)
{择路1}
else
{择路2}
这是典型的选择结构,如果条件成立,执行路径1,否则执行路径2,路径1和路径2都可以是1条或若干条语句构成。
求ax^2+bx+c=0的根
分析:
因为当b^2-4ac>
=0时,方程有两个实根,否则(b^2-4ac<
0)有两个共轭复根。
其程序段如下:
inta,b,c,d,x,y;
printf("
Pleaseputthenumberofa,b&
cfromthequadr