C语言初步

上传人:xy****7 文档编号:59649512 上传时间:2018-11-10 格式:PPT 页数:87 大小:939.50KB
返回 下载 相关 举报
C语言初步_第1页
第1页 / 共87页
C语言初步_第2页
第2页 / 共87页
C语言初步_第3页
第3页 / 共87页
C语言初步_第4页
第4页 / 共87页
C语言初步_第5页
第5页 / 共87页
点击查看更多>>
资源描述

《C语言初步》由会员分享,可在线阅读,更多相关《C语言初步(87页珍藏版)》请在金锄头文库上搜索。

1、C语言程序设计,主讲:何继票 邮箱:,课程介绍,课程内容: 本课程讨论如何使用C语言进行程序设计 课程目标: 1.熟悉C语言的基本概念 2.掌握基本的结构化程序设计方法 3.会读、会编、会调试简单的C程序 总学时:54,学习这门课程的方法,教师的作用 引导,答疑 学习方法 C语言是门技术性很强的课程,因此要多实践,多讨论。 C语言是门艺术性很强的课程,独立完成作业不仅是对技术的巩固,同时也是提高自己编程的过程。 自学很重要,温故而知新。,第一章C语言概述,计算机系统的组成 硬件(CPU,内存,输入/输出等) 软件 系统软件(提供我们操作硬件的接口) 应用软件(为我们提供一定功能的服务) 软件是

2、控制硬件来为我们提供服务的指令集合;这些指令就是用计算机能够识别的语言设计好的程序。,计算机语言的发展,CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减,用助记符号描述的指令系统 如 ADD A, B,面向机器的语言,程序设计是数据被加工的过程,客观世界可以分类,对象是类的实例 对象是数据和方法的封装 对象间通过发送和接受消息发生联系,自然语言同计算机语言的异同,都是用来进行交流的 自然语言同人进行有情感的沟通 计算机语言是人下达给计算机的命令 有一定的词汇,和语法规则 自然语言句法多变,仍然可以进行沟通 计算机语言固定,不能有变化 启示:计算机语言

3、同人类的自然语言一样具有基本词汇和语法规则,但是必须遵守这些规则才可以同计算机进行正常的沟通,自然语言 信息交流 语法规则、句法规则灵活 走,去晒太阳 去晒太阳,走 表达方式多样 C语言 人机对话(命令方式) 语法规则、句法规则固定 X=a+b ; Scanf(“%d”,&a); 算法多样,C语言发展过程,产生过程 时间:19721973 地点:美国贝尔实验室 目的:UNIX操作系统 设计人: Ken.Thompson和Dennis.M.Ritchie C标准(为了解决不同版本的问题) 标准C: K&R合著The C Programming Language ANSI C: 1983年 87

4、ANSI C: 1987年 1994年国际标准的ANSI C ANSI C-99: 1999年,如何评价一种计算机语言,执行效率 高效很重要 对硬件的操作性能 是否有很大的控制权 程序代码书写简单 写程序不要太复杂 支持数据类型的能力 可以方便地进行程序设计,C语言的优缺点,是一种中级语言 是目前最高效的计算机语言 是目前唯一通用地可以操作硬件的语言 支持多种的数据类型,是适合设计系统软件和应用软件的一种语言。 缺点: 过于灵活,而不好掌握 在应用软件设计中,不够简洁。,为什么需要学习C语言,从专业的角度来看 本专业的很多课程都是建立在其基础上的 是本专业讨论计算机问题的交流工具 是信息相关专

5、业的基本功。 从语言的角度看 功能强大灵活,执行效率高 结构化语言,非常简洁 可以移植,结构化语言 C语言应用广泛,存在大量的工作成果。,C程序示例,/* example1.1 The first C Program*/ #include #define OUT “Hello,World!” Void main() printf(OUT); ,输出: Hello,World!,例1.2,/* example1.1 calculate the sum of a and b*/ #include /* This is the main program */ main() int a,b,sum;

6、a=10; b=24; sum=add(a,b); printf(”sum= %dn“,sum); /* This function calculates the sum of x and y */ int add(int x,int y) int z; z=x+y; return(z); ,运行结果: sum=34,C语言程序的主要组成,一个C程序有一个或多个函数组成 主函数(main),可以放在任何位置,并从其开始执行。 函数 包含文件 变量及常量 程序语句 注释行,C语言程序设计书写格式特点,习惯用小写字母,大小写敏感 适当的注释 一行仅写一句代码 可使用空行和空格 采用缩进的书写格式

7、统一的命名规范。 例子:P.11,程序的开发过程,明确目标 确定方法,并实现 创建程序 编辑 编译 连接 运行,小结:C语言程序设计结构特点,函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,例: /*This is the main /* of example1.1*/ */,第二章数据类型、常量与变量,本章详细讨论各种数据的基本类型及其操作,2.1 C语言的数据类型,数据是程序加工、处理的对象,同时也是程序加工的结

8、果。 数据的呈现方式包括 常量 变量 数据在计算机中根据不同的类型进行不同的保存方式。,数据类型总表,数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 其上可进行的操作,基本数据类型,整型,字符型,实型,有,无,说明:数据类型所占字节数随机器硬件不同而不同,上表以IBM PC机为例:,2.2标示符、常量与变量,标识符 定义:用来标识变量、常量、函数等的字符序列 组成: 只能由字母、数字(09)、下划线组成,且第一个字母必须是字母或下划线 大小写敏感 不能使用关键字,和一些特殊标示符 长度:最长32个字符(不同的编译系统不同),例:判断下列标识符号合法性 sum Sum M.D.

9、John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123,M.D.John,3days,#33,char,$123,ab,关键字,是C语言中已经被预先定义并使用的标示符,它们在程序中起着特殊的作用。 标准的C语言定义了32个关键字(附录B),但是根据不同的系统(MS C,Turbo C),还会有一些标示符被系统使用,成为关键字。 C99标准增加了新关键字:restrict, inline, _Complex, _Imaginary, _Bool。,关键字(续,选讲),数据类型关键字 void :声明函数无返回值或无

10、参数,声明无类型指针,显式丢弃运算结果 char :字符型类型数据,属于整型数据的一种 int :整型数据,通常为编译器指定的机器字长 float :单精度浮点型数据,属于浮点数据的一种 double :双精度浮点型数据,属于浮点数据的一种 B 类型修饰关键字(4个) short :修饰int,短整型数据,可省略被修饰的int。 long :修饰int,长整形数据,可省略被修饰的int。 signed :修饰整型数据,有符号数据类型 unsigned :修饰整型数据,无符号数据类型 C 复杂类型关键字(5个) struct :结构体声明 union :共用体声明 enum :枚举声明 type

11、def :声明类型别名 sizeof :得到特定类型或特定类型变量的大小,关键字(续,选讲),存储级别关键字(6个) auto :指定为自动变量,由编译器自动分配及释放。通常在栈上分配 static :指定为静态变量,分配在静态变量区,修饰函数时,指定函数作用域为文件内部 register :指定为寄存器变量,建议编译器将变量存储到寄存器中使用,也可以修饰函数形参,建议编译器通过寄存器而不是堆栈传递参数 extern :指定对应变量为外部变量,即标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。 const :与volatile合称“cv特性”,指定变量不

12、可被当前线程/进程改变(但有可能被系统或其他线程/进程改变) volatile :与const合称“cv特性”,指定变量的值有可能会被系统或其他进程/线程改变,强制编译器每次从内存中取得该变量的值,关键字(续,选讲)流程控制,A 跳转结构(4个) return :用在函数体中,返回特定值(或者是void值,即不返回值) continue :结束当前循环,开始下一轮循环 break :跳出当前循环或switch结构 goto :无条件跳转语句 B 分支结构(5个) if :条件语句 else :条件语句否定分支(与if连用) switch :开关语句(多重分支语句) case :开关语句中的分支

13、标记 default :开关语句中的“其他”分治,可选。 C 循环结构(3个) for :for循环结构 do :do循环结构 while :while循环结构,特殊的标示符,特定标识符:虽没列入关键字,却也有特定的含义。如:define include undef ifdef ifndef endif 等,它们是一些预处理命令(P.99) 好得标示符命名原则: 见名知意 例如:name,old,color student_num可以改成stud_num(文件名的长度) 不宜混淆 如l与I, o与0,常量,程序运行时其值不能改变的量(即常数) 分类: 直接常量:从其字面上就可以看出 整型常量

14、实型常量 字符常量 字符串常量 符号常量:用标识符代表常量 定义格式: #define 符号常量 常量 定义格式:const 类型 符号常量=常量,如 #define PRICE 30,例 符号常量举例 #define PRICE 30 main() int num,total; num=10; total=num*PRICE; printf(“total=%d“,total); ,运行结果:total=300,整型常量整常量,进制问题:对进位方式的一种规定 整数常量的进制:十进制,八进制(0)和十六进制(x,X)。,问题: 0123 = ( )10 0x123 = ( )10 0Xff =

15、( )10,整型常量,整型常量的三种表示方法: 十进制整型常量:由数字09组成,前面可有“+”、“-”。 八进制常量:以零(0)开头的整数,如026 , 0123, -011等。而089, 078则不合法(?)。 十六进制常量:以0x或0X开头的整数.十六进制数符:0 1 2 3 4 5 6 7 8 9 A/a B/b C/c D/d E/e F/f 如:0x12 0x1a=0x1A,如何确定整型常量的类型,通过常数的数值大小和标志来确定 例如:按数值的大小: -3276832767之间的数据是short整型或者int整型 2147483647 2147483647之间的数据是long整型 例

16、如:按标志 123L,是long整型, 在数据的后面增加L,l标志,浮点型常量(实数),表示方式: 十进制数形式:(必须有小数点) 如0.123, .123, 123.0, 0.0, 123. 指数形式:(e或E之前必须有数字;指数必须为整数)如12.3e3 ,123E2, 1.23e4 ,而e-5, 1.2E-3.5,4.5e , .e3 , 2e3.1均为不合法的实数。 实型常量的类型 默认double型 在实型常量后加字母f或F,认为它是float 型,字符常量 定义:用单引号括起来的单个普通字符或转义字符.,字符常量的值:该字符的ASCII码值,如 101 -A 012 -n 376 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号