280 likes | 434 Views
C 语言程序设计. 主讲:王海文 2005. 《C 语言程序设计 》 是重要基础课程之一,是后续课程 《 数据结构 》 、 《 面向对象程序设计 C++》 等许多课程的基础,是成为高水平计算机程序设计与系统分析人员的必修课。. 课程要求. 课前要预习,课堂上要认真听讲. 看参考书、独立完成作业. 上机前先完成预习报告,严禁抄袭!. 上机后准时交实验报告. 若有错,要及时更正. 本课程主要内容介绍. 一、概述 七、函数. 二、数据类型 八、编译预处理. 三、运算符和表达式 九、指针.
E N D
C语言程序设计 主讲:王海文 2005
《C语言程序设计》是重要基础课程之一,是后续课程《数据结构》、《面向对象程序设计C++》等许多课程的基础,是成为高水平计算机程序设计与系统分析人员的必修课。《C语言程序设计》是重要基础课程之一,是后续课程《数据结构》、《面向对象程序设计C++》等许多课程的基础,是成为高水平计算机程序设计与系统分析人员的必修课。 课程要求 • 课前要预习,课堂上要认真听讲 • 看参考书、独立完成作业 • 上机前先完成预习报告,严禁抄袭! • 上机后准时交实验报告 • 若有错,要及时更正
本课程主要内容介绍 一、概述 七、函数 二、数据类型 八、编译预处理 三、运算符和表达式 九、指针 四、判断选取控制 十、结构体与共用体 五、循环控制 十一、位运算 六、数组 十二、文件
C语言发展历史 C语言的特点 简单的C程序介绍 C程序上机过程及步骤 第一章 C语言概述
1.1 C语言发展历史 程序设计语言的发展 C语言程序设计第一章 C语言概述 冯.诺依曼结构: 运算器 中央处理器CPU 主机: 控制器 计算机 存储器 I/O设备:键盘、显示器等 机器语言 汇编语言 高级语言 面向过程 面向机器的语言 面向对象 程序设计是数据被加工的过程 CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减 用助记符号描述的指令系统 如 ADD A, B > >
C语言发展过程 产生背景 产生过程 时间:1960 Algol60 时间:1963 CPL语言 时间:1967 BCPL语言 时间:1970 B语言 时间:1972~1973 C语言 地点:美国贝尔实验室 目的:UNIX操作系统 设计人: Ken.Thompson和Dennis.M.Ritchie C标准 标准C: K&R合著《The C Programming Language》 ANSI C: 1983年 87 ANSI C: 1987年 1990年国际标准的ANSI C C语言程序设计第一章 C语言概述 < >
目前流行的C语言编译系统 面向过程的: MS C Turbo C Quick C 面向对象的: Borland C++ Turbo C++ 面向对象的可视化: Visual C++
1.2 C语言特点 语言简洁、紧凑、灵活 运算符和数据类型丰富 程序设计结构化、模块化 生成目标代码质量高 可移植性好 C语言程序设计第一章 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( )~ • do~while( ) • continue • break • switch • goto • return <
C语言程序设计第一章 C语言概述 使用方便、灵活 VB语言 Dim a As Integer Dim b As Integer if (表达式)then 语句 End if C语言 int a,b; if (表达式)语句; <
C语言程序设计第一章 C语言概述 34种运算符: 算术运算符:+ - * / % ++ -- 关系运算符:< <= == > >= != 逻辑运算符:! && || 位运算符 :<< >> ~ | ^ & 赋值运算符:= 及其扩展 条件运算符:?: 逗号运算符:, 指针运算符:* & 求字节数 :sizeof 强制类型转换:(类型) 分量运算符:. -> 下标运算符:[] 其它 :( ) - <
C语言程序设计第一章 C语言概述 短整型short 整 型 整型int 长整型long 数值类型 单精度型float 浮点型 基本类型 双精度型double 字符类型char 数组 C 数 据 类 型 结构体struct 构造类型 共用体union 枚举类型enum 指针类型 空类型void 定义类型typedef <
C语言是中级语言 (1)保持了高级语言的特征 • 易于移植(与机器硬件无关性); • 便于识读记写和交流; • 不必熟悉计算机内部结构和工作原理,便于非计算机专业人 员使用。 (2)兼备低级语言的特性 • 具有对计算机硬件的操作能力和基本单位、成分的操作能力, 例如对地址、位的操作; • 可包容汇编指令、调用汇编程序、调用系统功能及中断,实现 汇编语言的大部分功能。 此为C的一个重要优点。 <
C的应用 由于上述的那些优势和特点,从著名的UNIX到WINDOWS,从系统软件到应用软件,大多数或多数是用C语言开发的,尤其是在系统软件领域和实时控制软件领域,C语言有着不可替代的作用。而在这些软件中,仅内核和影响速度较大的模块用汇编语言或机器语言编写。
1.3 简单的C程序介绍 一、简单的C程序例子 例1 本程序输出一行信息: This is a program. main( ) { printf(“This is a program.\n”); } 程序说明: main 表示主函数,函数体用`{` 和`}`括起来 “;”为语句结束标志 printf为C的输出函数
[例2] 求两数之和。本程序输出为: sum is 579 main() /*主函数*/ { int a,b,sum; /*变量定义*/ a=123;b=456; sum=a+b; printf(“sum is %d\n”,sum); } 说明: 1 /* */ 是注释,可出现在程序中任何位置 2 第二行是变量定义部分 3 第三行、第四行为赋值语句 4 %为输入输出格式字符串
例3. 将上题中求和的功能用一函数sum()完成,地主函数中调用。 int sum(int a,int b) { int s; s=a+b; return (s); } main( ) { int x,y,z; printf("Enter two numbers:\n"); scanf("%d%d",&x,&y); z=sum(x,y); printf(“%d+%d=%d”,x,y,z); }
二、C程序的组成 函数类型说明 函数名 函数说明部分 函数形参 C程序 (函数首部) 由若干 函数组成 形参类型说明 变量定义部分 函数体 执行部分
说明: 1 C程序中必有且仅有一个main( )函数,程序从main( )开始执行,并且在main( )中结束。 2每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。 3 C 语言的注释符是以“/*”开头并以“*/”结尾的串。在“/*” 和“*/”之间的即为注释。(补充) 4 书写程序时应遵循的规则 从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时应遵循以下规则: (1)语句的不同单词间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。 (2)最好一个说明或一个语句占一行。 (3)用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。
C语言程序设计第一章 C语言概述 • 格式特点 • 习惯用小写字母,大小写敏感 • 不使用行号,无程序行概念 • 可使用空行和空格 • 常用锯齿形书写格式 main( ) {int x,y; /*提示输入x,y:*/ printf(“Please input x y:”); scanf(“%d%d”,&x,&y); /*比较x,y的大小,并输出结果*/ if(x>y) printf(“%d>%d\n”,x,y); else printf(“%d>=%d\n”,y,x); /*程序结束*/ return o; } main( ) {………………. ……………… ………….. ………….. ……… ………. …………… ……………. ………………. ……………….. } 优秀程序员的素质之一: • 使用TAB缩进 • {}对齐 • 有足够的注释 • 有合适的空行
C语言程序设计第一章 C语言概述 编辑 编译 链接 执行 file.exe • 1.4 C程序的上机步骤 • C程序开发步骤 程序代码的录入, 生成源程序*.c 语法分析查错,翻译 生成目标程序*.obj 与其它目标程序或库 链接装配,生成可执行 程序*.exe < >
Turbo C集成开发环境 配置要求 UNIX,PC-DOS,MS-DOS,UCDOS操作系统 硬盘容量约2M,448K RAM运行空间 安装Turbo C Setup Install 若不是可安装盘,将文件拷贝到对应的目录下 C语言程序设计第一章 C语言概述 TC LIB INCLUDE *.* *.* *.* SYS < >
C语言程序设计第一章 C语言概述 • 进入Turbo C 2.0 • D:\TC>TC.exe • 主控菜单 • 文件操作FILE :NewLoadSave Write to • 编辑操作EDIT:插入/修改块查找/替换 • 编译链接COMPILELINKMAKE • 执行RUN • 退出Turbo C • Alt +x • Alt+F ,Q • 帮助Help • F1 • Ctrl+F1 < >
C语言程序设计第一章 C语言概述 • 常用热键 基本操作: F10-----调用主菜单 F2------存盘 F3------打开 Alt+F9------Compile Ctrl+F9------Run Alt+F5------User Screen 文本编辑: -------移动光标 PgUp,PgDn------上下翻页 Ctrl+PgUp,Ctrl+PgDn------文件首尾 Home End Ddelete Insert Bkspace 块操作: Ctrl+KB-------块开始标记 Ctrl+KK--------块结束标记 Ctrl+KC-------块拷贝 Ctrl+KV--------块移动 Ctrl+KY-------块删除 Ctrl+KH--------块隐藏 窗口操作: F5-----窗口缩放 F6-----窗口切换 程序调试: F8-----Step over F7-------Trace into F4-----Goto Cursor Ctrl+F7--------Add Watch Ctrl+F8------Toggle Breakpoint Ctrl+F2--------Program Reset
C 语言上机实现 • 1、进入TC • Turbo C 2.0 • Turbo C 3.1 for Win 进入Turbo C 集成开发环境环境 第一行是主菜单行,它包括: 文件、编辑、编译、选项、调试、运行
2. 编译、连接和运行 • 3. 退出TC 集成环境
28 Turbo C的使用及上机过程 开发工具的选择:Borland 公司产品: 1 Turbo C2.0:简单易学,适合初学者使用。dos环境下的产品,不支持鼠标操作。2 Turbo C++3.0:支持C/C++编程,dos下的产品,支持鼠标操作。3 Borland C++系列:支持C/C++编程,windows环境,支持windows编程。比较复杂。4 C++ Builder 5.0: 可视化的OOP软件,比Visual c++,Borland C++易用,功能强大,是目前最先进的C++编程工具。 Microsoft产品: 5 Microsoft C/C++系列:支持C/C++编程,dos下的产品,支持鼠标操作。6 Visual C++6.0 :复杂的C++开发工具,具有强大的功能。支持C/C++编程,windows环境。其它C/C++编译器:watcom C++等。