谭浩强的C语言教程PPT版讲义.

合集下载

C语言程序设计第四版PPT-谭浩强

C语言程序设计第四版PPT-谭浩强

文件f2的 文件信息区
文件f3的 文件信息区
文件的基本知识——文件的操作 写文件:打开-写-关闭 读文件:打开-读-关闭
文件的打开
功能:为文件建立相应的信息区(存放 文件信息)和文件缓冲区(暂时存放输入 输出的数据) 函数: fopen(文件名,使用文件方式); 例: fopen("a1.dat","r");
第10章 文件
本章内容
10.1 文件的基本知识 10.2 打开与关闭文件 10.3 顺序读写数据文件 10.4 随机读写数据文件 10.5 文件读写的出错检测
文件的基本知识——输入输出
之前各章中处理的数据 ➢输入:键盘->内存 ➢输出:内存->显示器 实际上也可能是 ➢输入:外部设备->内存(读文件) ➢输出:内存->外部设备(写文件) 操作系统把各种设备都统一作为文件处理
文件
顺序文件的读写——读写字符串
例10.3 从键盘输入3个字符串,排序,把排
序后的字符串写入文件(P.342-343) 读上面写好的文件(P.344)
顺序文件的读写——格式化读写
fprintf(文件指针,格式字符串,输出表列); fscanf (文件指针,格式字符串,输入表列);
例: fprintf (fp,"%d,%6.2f",i,f); fscanf (fp,"%d,%f",&i,&f);
用文件扩展名”
文件的基本知识——流式文件
C语言把文件看作是字符(或字 节)的序列。
文件以“流”的形式在程序与操 作系统间流动。
文件的基本知识——数据的形式
根据数据的组织形式,数据文件可分为 ASCII文件:数据逐个字符的ASCII码 输出到外存,也称文本文件 二进制文件:内存中二进制形式的数据 直接输出到外存

第1章谭浩强CPPT课件

第1章谭浩强CPPT课件
5
[例1.2]求两数之和。
main() { int a, b, sum; /* 定义三个整型变量 */
a = 123; b = 456; sum = a + b; printf("sum is %d\n", sum); } 本程序的作用:求两整数a、b之和sum, 并在屏幕上输出sum。
6
[例1.3]从键盘输入两个整数,在屏幕上输出它们的 最大值。
8
2、一个函数由两部分构成:
(1)函数的说明部分, 包括:函数名、函数类型(返回值类型)、函 数属性(前面的例子中未使用函数的属性。属 性包括near和far)、形式参数名、形式参数 类型。 (2)函数体, 大括号{ }中的部分。函数体中包含变量定义部 分和执行部分。
9
例:
int max (int x,int y) {
}
10
3、一个C程序总是从main( )处开始执行,而不管main() 在源程序中的位置。
4、C程序书写格式自由,一个语句可以占多行,一行也 可以有多个语句。
5、语句和数据定义后必须要有分号。例、c = a + b ; 6、C语言用函数进行输入输出,如scanf()、printf()。 7、C语言用/* */作注释。
8、可移植性好。基本不作修改就可以在不同型号计算 机、不同操作系统上执行。 9、C语言难学
4
§1.3 简单的C程序
[例1.1] main() {
printf("This is a C program.\n"); } 该程序的作用:在屏幕上输出一行信息: This is a C program.
7
从以上三个例子中,可以看到
1、C程序主要由函数构成, C程序中有三种类型的函数: main():主函数,开发系统提供的特殊函数,每一

c语言程序设计第7章(谭浩强)PPT版本

c语言程序设计第7章(谭浩强)PPT版本

如 int a[5]; static int a[5]={6,2,3}; int a[]={1,2,3,4,5,6}; 等价于: a[0]=6; a[1]=2;a[2]=3; a[3]=0; a[4]=0; 等价于:a[0]=0; a[1]=0; a[2]=0; a[3]=0; a[4]=0; 如 编译系统根据初值个数确定数组维数 int a[3]={6,2,3,5,1}; ()

38 49 49 38 65 76 97 13 97 76 97 27 13 30 97 27 97 30 初 始 关 键 字 n=8
38 49 65 13 76 27 76 13 30 76 27 76 30 97 第 一 趟
38 49 13 65 27 65 13 30 65 27 65 30
程序举例
#include <stdio.h> #define SIZE 10 例 读10个整数存入数组,找出其中最大值和最小值 main() { int x[SIZE],i,max,min; printf("Enter 10 integers:\n"); for(i=0;i<SIZE;i++) 步骤: { printf("%d:",i+1); 1. 输入:for循环输入10个整数 scanf("%d",&x[i]); 2. 处理: } (a) 先令max=min=x[0] max=min=x[0]; (b) 依次用x[i]和max,min比较(循环) for(i=1;i<SIZE;i++) 若max<x[i],令max=x[i]{ if(max<x[i]) max=x[i]; 若min>x[i],令min=x[i] if(min>x[i]) min=x[i]; 3. 输出:max和min } printf("Maximum value is %d\n",max); printf("Minimum value is %d\n",min); }

C语言谭浩强完整课件

C语言谭浩强完整课件

着广泛的应用。
计算机系统基本概念
计算机系统的组成
计算机系统由硬件系统和软件系统两大部分组成,硬件系统包括运算器、控制器、存储器 、输入设备和输出设备等五大部分;软件系统包括系统软件和应用软件两大类。
计算机的工作原理
计算机的工作原理可以概括为存储程序控制和程序控制流,即计算机通过执行存储在内存 中的程序来控制各部件协调工作。
在定义数组时,可以直接 对数组进行初始化,也可 以定义后再进行赋值。
一维数组的使用
通过下标访问数组元素, 下标从0开始,最大下标为 数组长度减1。
二维数组与多维数组
二维数组的定义
二维数组可以看作是一个 表格,由行和列组成,每 个元素都有两个下标。
二维数组的初始化
在定义二维数组时,可以 直接对数组进行初始化, 也可以定义后再进行赋值 。
scanf和printf函数都支持 格式化输入输出,可以通 过格式控制符指定输入输 出数据的类型和格式。
格式化输入
格式控制符
C语言提供了一组格式控制符,用于 指定输入输出数据的类型和格式,如 %d表示输入输出整数,%f表示输入 输出浮点数等。
格式化输入
格式化输出
使用printf函数进行格式化输出时, 可以指定输出数据的格式和显示方式 ,如控制小数位数、显示宽度等。
类型。
枚举常量的说明
在枚举类型定义中,可以列 出多个枚举常量,每个常量 对应一个整数值。默认情况 下,第一个枚举常量的值为0 ,后续常量的值依次递增1。
枚举变量的使用
声明枚举类型的变量后,可 以为其赋值。枚举变量的值 只能是枚举常量中定义的值 。使用枚举类型可以提高代 码的可读性和可维护性。
08
文件操作与数据处理

C语言PPT谭浩强教材配套版

C语言PPT谭浩强教材配套版
stud1.display( );
这就是向对象stud1发出旳一种“消息”,告知它执 行display“措施”(即display函数)。在这里一 种语句中涉及到3个术语:对象、措施和消息。
归纳以上对类型旳申明,能够得到其一般形式:
class 类名
{private : 私有旳数据和组员函数;
public: 公用旳数据和组员函数;
stud(int n,char nam[],char s ) //定义构造函数,有形 参
{num=n; strcpy(name, nam);
sex=s;
}
此时数据旳值不由构造函数stud拟定,而是在调用 此函数时由实参传来。但应注意构造函数不同于 一般旳组员函数,不能这么调用:
stud1.stud(10010,“Wang-li”,′f′); //企图用调用一般组 员函数旳措施来调用构造函数
}; C++增长了class类型后,仍保存了构造体类型(struct)
和共用体类型(union),而且把它们旳功能也扩展 了,允许在申明旳构造体和共用体类型中涉及组 员函数,也就是能够用struct和union来申明一种类 型。但它们和class申明旳类有所区别。
用struct申明旳类,假如不作private或public申明, 系统将其组员默认定为public(公用旳),在需要 时能够自己用显式申明重新指定为private或public。
用union申明旳类,假如不作private或public申明, 系统将其组员默认定为public(公用旳),且不能 变化。
用class申明旳类,假如不作private或public申明,系 统将其组员默认定为private(私有旳),在需要 时能够自己用显式申明变化。

谭浩强C语言PPT

谭浩强C语言PPT

此外,还要告诉TC:Turbo C的“包含文件”和库函数在哪 个子目录中。在安装Turbo c时,如果用户不作另外的指定,系 统会按照默认的方案建立一个目录用来存放Turbo C的系统文件 ,同时在主目录下建立一个INCLUDE子目录用来存放“包含
文件”,另外建立一个LIB子目录用来存放库函数。如果在安 装Turbo C时,用户不采用系统提供的子目录名和安排,而自己 另外指定了子目录名,则应当通知Turbo C系统,以免它找不到 。
允许访问物理地址,能进行位操作,实 现汇编语言的大部分功能,可以直接对 硬件进行操作。所以说C语言既有高级语 言的特征又有低级语言的特征,有人把C 称为“高级语言中的低级语言”或“中 级语言”
生成目标代码质量高,程序执行效率高
一般只比汇编程序生成的目标代码效率 低10%~20%。
可移植性好(与汇编语言比)。基本上 不做修改就能用于各种型号的计算机和 各种操作系统。
编译
有 有错? 无 连接 执行 不正确 结果 正确? 正确 结束
目标程序 .exe
用Turbo C运行C程序的步骤
Turbo C向用户提供一个集成环境,把程序的编 辑、编译、连接和运行等操作全部集中在一个界面 上进行。 Turbo C运行在DOS环境下。 安装Turbo C 在使用Turbo C之前,一般将Turbo C安装在硬盘 上的某一个子目录下。如c:\TC 安装完成后,在安装的子目录下将会增加两个子 目录: ..include子目录:其中包括stdio.h,math.h等头文件 ..lib子目录:其中包括maths.lib, mathl.lib, graphics.lib等库函数文件。
Make EXE file(F9):编译连接同时进行得到.EXE, 如果有project 文件,则对project文件中的所有列 出的源程序进行编译连接,产生.EXE。

C语言教程PPT版讲义谭浩强第十章

C语言教程PPT版讲义谭浩强第十章

例 从键盘输入4个学生数据,把他们转存到磁盘文件中去
#include <stdio.h>
voviodisdadvies(p)lay()
#define SIZE 2
{ {FIFLIELE*f*pf;p;
struct student_type
initnti; i;
{ char name[10];
if(i(ff(p(f=pf=ofpoepne(n"d(":d\\:f\e\fnegnygiy\\ie\x\eex\\es\t\ust_ud_adt"a,t""w,"brb""))=)===NNUULLLL))
2011
文件类型指针
❖指针变量说明: FILE *fp; ❖用法:
文件打开时,系统自动建立文件结构体,并把指向它的指针 返回来,程序通过这个指针获得文件信息,访问文件
文件关闭后,它的文件结构体被释放
文件名
C程序
文件使用 方式
操作系统
文件类型指针
磁盘
§10.3 文件的打开与关闭
文C件文使件用方例操式作文件用打库开函与数测实试现含义,包含在stdio.h “r文/rb”件(只使读)用F方ILE式:*打fp为;开输文入打件开-一->个文文件本/二读进/写制文--件>关闭文件 “w系/wb统” (只自写动) f打p=开fop和为en输关(“出a闭a打.c开三”,“或个w建”标)立; 一准个文文件本/二:进制文件
例 从键盘输入字符,逐个 ##ininccluluddee<<sstdtdioio.h.h>>
存到磁盘文件中,直到 mmaainin(())
输入‘#“为止

c语言程序设计 第三版 谭浩强ppt课件

c语言程序设计 第三版 谭浩强ppt课件

第一章§1-1 C语言出现的历史背景•C语言是国际上广泛流行的高级语言。

•C语言是在B语言的基础上发展起来的。

•B (BCPL)语言是1970年由美国贝尔实验室设计的, 并用于编写了第一个UNIX操作系统,在PDP 7上实现。

优点:精练,接近硬件,缺点:过于简单,数据无类型。

•1973年贝尔实验室的D.M.Ritchie 在B语言的基础上设计出了C语言,对B取长补短,并用之改写了原来用汇编编写的UNIX,(即UNIX第5版),但仅在贝尔实验室使用。

§1-1C语言出现的历史背景•1975年UNIX第6版发布,C优点突出引起关注。

•1977年出现了《可移植C语言编译程序》 ,推动了UNIX在各种机器上实现 ,C语言也得到推广,其发展相辅相成。

•1978年影响深远的名著《The C Programming Language》由 Brian W.Kernighan和Dennis M.Ritchie 合著,被称为标准C。

•之后,C语言先后移植到大、中、小、微型计算机上,已独立于UNIX和PDP,风靡世界,成为最广泛的几种计算机语言之一。

§1-1C语言出现的历史背景•1983年,美国国家标准化协会(ANSI)根据C语言各种版本对C的发展和扩充,制定了新的标准ANSI C ,比标准C有了很大的发展。

•1988年K & R按照 ANSI C修改了他们的《TheC Programming Language》。

•1987年,ANSI公布了新标准——87 ANSI C。

•1990年,国际标准化组织接受了87 ANSI C为ISO C 的标准(ISO9899—1990)。

•1994年,ISO又修订了C语言标准。

•目前流行的C语言编译系统大多是以ANSI C为基础进行开发的。

说明: 不同版本的C编译系统所实现的语言功能和语法规则又略有差别,因此读者应了解所用的C语言编译系统的特点(可以参阅有关手册)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档