C语言程序设计初步.ppt_第1页
C语言程序设计初步.ppt_第2页
C语言程序设计初步.ppt_第3页
C语言程序设计初步.ppt_第4页
C语言程序设计初步.ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计,主讲:王光琼 联系电话QQ:645093281 Email:,课程地位,.Net & C#,SQL Server,XML,SPM,ASP.NET & WebService,Oracle,UML,SPR: Computer Base,HTML&JavaScript,SQL Server Base,OOP&Java Base,C,STB,JSP/Servlet,EJB&WebService,WinForms,Struts&JSF,Testing&SQA,Linux,课程目标,理解算法、流程图以及程序的概念 理解程序逻辑 掌握用C语言进行程序设计的基本方法。 掌握C语言的基础知识,包括基本数据类型、表达式、控制结构等 掌握C语言的高级知识,包括数组、指针、函数、字符串、结构等,教材、参考书与课时安排,教材 C语言程序设计教程 谭浩强 高等教育出版社 参考书 C程序设计 谭浩强编著 清华大学出版社 C高级实用程序设计 王士元 清华大学出版社 课时安排 授课 :6学时/周 上机训练:3学时/周或根据需要安排,上机安排 上机地点:计科系机房 上机时间:课表上 上机内容: 随教学进度的基础训练(上机调试每次课堂例子、作业) 完成ACCP上机内容。 要求: 所有作业必须独立完成 作业必须经上机调试通过 上机考勤3次缺席,按不及格处理 上机时间不得上网,否则按缺席一次处理,课程要求,课前请做好预习 保持课堂安静,头脑清醒,思维活跃 认真、独立、按时完成并提交作业 重视上机实践,有效利用宝贵的上机时间,第一章 C语言概述,1.1 C语言发展历史 程序设计语言的发展,程序设计是数据被加工的过程,程序设计关键是定义类,并由类派生对象,C语言程序设计 第一章 C语言概述,机器语言:指计算机能够识别的语言。CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减 汇编语言:用助记符号描述的指令系统 如 ADD A,B SUB A,B,高级语言,面向过程:程序设计是数据被加工的过程,面向对象:客观世界可以分类,对象是类的实例 对象是数据和方法的封装; 对象间通过发送和接受消息发生联系程序设计关键是定义类,并由类派生对象。,Ada,ALGOL60,ALGOL68,Pascal,Modula-2,CPL,BCPL,B,C,C+,Java,LISP,PROLOG,COBOL,FORTRAN77,FORTRAN,PL/1,Simula 67,Smalltalk 80,BASIC,ANSI-BASIC,QBASIC,VB,FORTRAN90,C语言发展过程 产生背景 见下两页 产生过程 时间:19721973 地点:美国贝尔实验室 目的: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语言概述,60年,国际数学家小组研制的ALGOL 60是一种面向问题的高级语言,由于它的语句难以实现对计算机硬件的操作,所以不宜编写系统软件。 63年,英国剑桥大学以ALGOL语言为基础推出CPL语言,虽然接近硬件,但规模大,难以实现。 67年,英国剑桥大学的Martin Richards对CPL作了简化,推出了BCPL语言。 69年,美国贝尔实验室的K.Thompson和D.M.Richie用汇编语言写了UNIX。他们深知用汇编语言编写系统软件的艰辛,繁锁、难记、移植性差。 70年,贝尔实验室的K.Thompson以BCPL为基础,对其进一步简化,设计出既简单,又接近硬件的B语言,并用B写了第一个UNIX,但B过于简单,功能有限。,7273年:贝尔实验室D.M.Ritchie在B基础上设计出C 既精炼,又可对硬件操作 73年:K.Thompson和D.M.Ritchie合作,用C改写UNIX的90% 75年:UNIX 6版公布后,C的优点被人们普遍重视 77年:不依赖于具体机器的C编译系统问世 78年:B.W.Kernighan和D.M.Ritchie合著 The C Programming Language 83,87,90年:美国标准ANSI C,87 ANSI C,ISO C(9899-1990) 88年:Kernighan和Ritchie合作按ANSI C标准重新修改了 The C programming Language,目前,在微机上广泛使用的语言编译系统有Microsoft C、Turbo C 、Borland C等。虽然它们的基本部分都是相同的,但还是有一些差异, 所以请大家注意自己所使用的编译系统的特点和规定(参阅相应的手册)。 本书选定的上机环境是visual c+ 6.0 TC V2.0(DOS操作系统)自学。,1.2 C语言特点 C语言同时具有汇编语言和高级语言的优势。 (1)语言简洁、紧凑,使用方便、灵活。32个关键字,9种控制语句。 (2)运算符极其丰富。34种运算符。(见附录IV) (3)数据结构丰富。 (4)具有结构化控制语句,用函数作为程序的模块单位,便于实现程序的模块化。 (5)语法限制不太严格,程序设计自由度大。 (6)可以直接操纵硬件。 (7)生成的目标代码质量高,程序执行效率高。 (8)可移植性好(较之汇编语言)。,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语言概述,关键字:又称保留字,一般为小写字母。 关键字是C编译程序预先登录的标识符,它们代表固定的意义,用户不能随便使用。,9种控制语句: if( )else for( ) while( ) dowhile( ) continue break switch goto return,C语言程序设计 第一章 C语言概述,例 C语言与Pascal语言比较 C语言 Pascal语言 含义 BEGIN.END 复合语句 if(e) s; IF(e) THEN s 条件语句 int i ; VAR i:INTEGER 定义i为整型变量 int a10; VAR a:ARRAY110 OF INTEGER 定义整型数组a int f(); FUNCTION f():INTEGER 定义f为返值整型的函数 int *p; VAR p:INTEGER 定义p为指向整型变量的指针 i+= 2; i=i+2 赋值i+2i i+,+i; i=i+1 i自增值 结论:C比 Pascal简练,源程序短。,C语言程序设计 第一章 C语言概述,34种运算符: 算术运算符:+ - * / % + - 关系运算符: = != 逻辑运算符:! & | 位运算符 : | & 赋值运算符:= 及其扩展 条件运算符:?: 逗号运算符:, 指针运算符:* & 求字节数 :sizeof 强制类型转换:(类型) 分量运算符:. - 下标运算符: 其它 :( ) -,C语言程序设计 第一章 C语言概述,C语言程序设计 第一章 C语言概述,1.3 简单的程序介绍,1.3.1 程序的总体结构 一个完整的语言程序,是由一个main()函数(又称主函数)和若干个其它函数结合而成的,或仅由一个main()函数构成。 仅由main()函数构成的语言程序。 例1.1 #include main() printf(“This is a C program.n“); 程序运行结果: This is a C program.,例1.2 #include main( ) /*求两数之和*/ int a,b,sum; /*定义变量*/ a=134;b=258; /*以下3行为C语句*/ sum=a+b; printf(“sum is %d n“, sum); 屏幕显示:sum is 392,例1.3 由main()函数和1个其它函数max()构成的语言程序。 /*功能:由main()函数和1个其它函数max()构成的语言程序示例*/ #include int max(int x, int y) return( xy ? x : y ); main() int num1,num2; printf(“Input the first integer number: “); scanf(“%d“, 程序运行情况: Input the first integer number:6 Input the second integer number:9 max=9 程序演示,例1.4 改写例1.3,交换main()函数和max()函数的前后位置。 源程序略。 程序运行情况: Input the first integer number:6 Input the second integer number:9 max=9 结论: 1.函数是语言程序的基本单位。 main()函数的作用,相当于其它高级语言中的主程序;其它函数的作用,相当于子程序。 2.C语言程序总是从main()函数开始执行。 一个语言程序,总是从main()函数开始执行,而不论其在程序中的位置。当主函数执行完毕时,亦即程序执行完毕。 习惯上,将主函数main()放在最前头。,1.3.2 函数的一般结构 任何函数(包括主函数main())都是由函数首部和函数体两部分组成。其一般结构如下: 函数类型 函数名(函数参数表) 函数首部部分 声明语句部分; 执行语句部分; 函数体部分 1. 使用的语法符号约定 .方括号表示可选(即可以指定,也可以缺省) 省略号表示前面的项可以重复 | 多(含2)中选1 2.函数首部 由函数类型(可缺省)、函数名和函数参数表三部分组成,其中函数参数表的格式为: 数据类型 形参1, 数据类型 形参2,例如,例1.3中的函数max(),其函数说明各部分如图1-1所示。 函数类型 函数名 函数参数表 int max ( int x , int y ) 图1-1 函数说明部分结构图 注意:一个函数名后面必须跟一对圆括弧,函数可以缺省参数表。例如 main() 3.函数体 在函数首部下面的大括号(必须配对使用)内的部分。 函数体一般由声明语句和执行语句两部分构成: (1)声明语句部分 声明语句部分由变量定义、自定义类型定义、自定义函数说明、外部变量说明等组成。,(2)可执行语句部分 一般由若干条可执行语句构成。图1-2是案例1.3的main()函数体的示意图。 /*主函数main()*/ #include main() int num1,num2; /变量定义部分 printf(“Input the first integer number: “); scanf(“%d“, 图1-2 函数体结构示意图,1.3.3 源程序书写格式 1.所有语句都必须以分号“;”结束,函数的最后一个语句也不例外。 2.程序行的书写格式自由,既允许1行内写几条语句,也允许1条语句分写在几行上。,例如,例1.3的主函数main(),也可改写成如下所示的格式: main() int num1,num2; printf(“Input the first integer number: ”); scanf(“%d”, 如果某条语句很长,一般需要将其分写在几行上。 3.允许使用注释。 C语言的注释格式为: /* */ 例如,在案例1.1和案例1.2中,以及本节其它部分给出的源程序中,凡是用“/*”和“*/”括起来的文字,都是注释。 (1) “/*”和“*/” 必须成对使用,且“/”和“*”、以及“*”和“/”之间不能有空格,否则都出错。,技巧:为避免遗漏必须配对使用的符号,例如注释符号、函数体的起止标识符(花括号)、圆括号等等,在输入时,可连续输入这些起止标识符,然后再在其中进行插入来完成内容的编辑。在起止标识符嵌套时,以及相距较远时,这样做更有必要。 (2)注释的位置,可以单占1行,也可以跟在语句的后面。 (3)如果一行写不下,可另起一行继续写。 (4)注释中允许使用汉字。在非中文操作系统下,看到的是一串乱码,但不影响程序运行。 Return,格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式,C语言程序设计 第一章 C语言概述,main( ) . . . . ,main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,sum); ,优秀程序员的素质之一: 使用TAB缩进 对齐 有足够的注释 有合适的空行,结构特点 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 程序语句 C程序由语句组成 用“;”作为语句终止符 注释 /* */为注释,不能嵌套 不产生编译代码,编译预处理命令,C语言程序设计 第一章 C语言概述,1.4 C程序的上机步骤 C程序开发步骤,file.exe,C语言程序设计 第一章 C语言概述,程序代码的录入, 生成源程序*.c,语法分析查错,翻译 生成目标程序*.obj,与其它目标程序或库 链接装配,生成可执行 程序*.exe,Turbo C集成开发环境 配置要求 UNIX,PC-DOS,MS-DOS,UCDOS操作系统 硬盘容量约2M,448K RAM运行空间 安装Turbo C 创建子目录 Install 若不是可安装盘,将文件拷贝到对应的目录下,C语言程序设计 第一章 C语言概述,进入Turbo C D:TCTC.exe 主控菜单 文件操作FILE :New Load Save Write to 编辑操作EDIT:插入/修改 块 查找/替换 编译链接COMPILE LINK MAKE 执行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 Delete Insert Bkspace,块操作: Ctrl+KB-块开始标记 Ctrl+KK-块结束标记 Ctrl+KC-块拷贝 Ctrl+KV-块移动 Ctrl+KY-块删除 Ctrl+KH-块隐藏,程序调试: F8-Step over F7-Trace into F4-Goto Cursor Ctrl+F7-Add Watch Ctrl+F8-Toggle Breakpoint Ctrl+F2-Program Reset,窗口操作: F5-窗口缩放 F6-窗口切换,C语言程序设计 第一章 C语言概述,1.运行一个语言程序的一般过程 urbo 是一个集源程序编辑、编译、连接、运行与调试于一体、 用菜单驱动的集成软件环境。 运行一个语言程序的一般过程: (1)启动TC,进入TC集成环境。 (2)编辑(或修改)源程序。 (3)编译。如果编译成功,则可进行下一步操作;否则,返回(2)修改源程序,再重新编译,直至编译成功。 (4)连接。如果连接成功,则可进行下一步操作;否则,根据系统的错误提示,进行相应修改,再重新连接,直至连接成功。 (5)运行。通过观察程序运行结果,验证程序的正确性。如果出现逻辑错误,则必须返回(2)修改源程序,再重新编译、连接和运行,直至程序正确。 (6)退出TC集成环境,结束本次程序运行。 Return,2.TC的启动、退出与命令菜单 (1)启动Turbo C: tc 启动Turbo C后,其主菜单条横向排列在屏幕顶端,并被激活,其中File主项成为当前项。 主菜单的下面,是Edit(编辑)窗口和Message(消息)窗口。两个窗口中,顶端横线为双线显示的,表示该窗口是活动窗口。 编辑窗口的顶端为状态行,其中: Line 1 Col 1:显示光标所在的行号和列号,即光标位置。 Insert:表示编辑状态处于“插入”。当处于“改写”状态时,此处为空白。 d: NONAME.C:显示当前正在编辑的文件名。显示为“NONAME.C”时,表示用户尚未给文件命名。 屏幕底端是7个功能键的说明,以及Num Lock键的状态(显示“NUM”时,表示处于“数字键”状态;空白,表示“控制键”状态)。,(2)命令菜单的使用 1)按下功能键F10,激活主菜单。如果主菜单已经被激活,则直接转下一步。 2)用左、右方向键移动光带,定位于需要的主项上,然后再按回车键,打开其子菜单(纵向排列)。 3)用上、下方向键移动光带,定位于需要的子项上,回车即可。执行完选定的功能后,系统自动关闭菜单。 注意:菜单激活后,又不使用,可再按F10Esc键关闭,返回原来状态。 (3)退出Turbo C 退出TC有两种方法: 1)菜单法:File | Quit(先选择File主项,再选择并执行Quit子项) 2)快捷键法:Alt+“X”(先按下Alt键并保持,再按字母键,然后同时放开) Return,3.编辑并保存一个语言源程序 (1)激活主菜单,选择并执行File | Load项(快捷键键:F3)。 (2)在“Load File Name”窗口,输入源程序文件名。 文件名的输入有两种方法:直接输入和选择输入。 1)直接输入 按照文件名的组成字符串,逐个字符输入即可。 如果是已经存在的文件,系统就在编辑窗口显示该文件的内容,可供编辑、修改。如果是新文件,则给出一个空白编辑窗口,可供输入新的源程序。 如果该文件不在当前目录下,则需要冠以路径名和(或)盘符。 2)选择文件(仅适用于已经存在的源程序文件) 空回车,打开当前目录下、后缀为.的所有文件的文件名窗口。 用上、下、左、右方向键,将光带定位于所需的文件名上。 按回车键。,常用编辑操作 在编辑源程序过程中,随时都可以按F2键(或File | Save),将当前编辑的文件存盘,然后继续编辑。这是一个良好的习惯! 关于在线帮助: 在任何窗口(或状态)下,按F1键激活活动窗口(或状态)的在线帮助: 下一页PageDown,返回上一页PageUp 关闭在线帮助、返回原窗口(或状态)Esc 返回前一个在线帮助屏Alt+F1(无论在线帮助是否被激活) 返回在线帮助索引F1:激活在线帮助后,再按F1,则返回在线帮助索引,以便查询其它类别在线帮助信息。 查询库函数的在线帮助信息F1:将光标移到需要查询函数名的首字符上,然后键入

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论