已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
宝鸡文理学院计算机科学系宝鸡文理学院计算机科学系 1 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 本章教学与考核内容本章教学与考核内容 基本要求:基本要求: 了解程序、程序设计、高级语言的概念。了解程序、程序设计、高级语言的概念。 掌握掌握C C语言的字符集、词类和语句的分类。语言的字符集、词类和语句的分类。 了解一个简单的了解一个简单的C C程序结构。程序结构。 熟悉算法的概念,算法的表示。熟悉算法的概念,算法的表示。 重点:重点:C C语言的字符集和保留字;语言的字符集和保留字;C C语言的上机步骤。语言的上机步骤。 难点:难点:C C程序结构,算法的表示。程序结构,算法的表示。 考核目标:考核目标: 高级语言的概念与作用高级语言的概念与作用 C C语言的字符集语言的字符集 C C语言的词的分类原则语言的词的分类原则 C C语言的保留字及其基本作用语言的保留字及其基本作用 2 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 1.1 1.1 程序与程序设计程序与程序设计 1.2 C1.2 C语言概述语言概述 1.3 C1.3 C语言的基本词法语言的基本词法 1.4 C1.4 C语言的基本语句语言的基本语句 1.5 C1.5 C程序的基本结构程序的基本结构 1.6 1.6 算法表示算法表示 1.7 C1.7 C语言程序的集成开发环境语言程序的集成开发环境 第1章 C语言程序设计概述 第 1 章 C语言程序设计概述 3 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 程序设计语言程序设计语言是人们根据描述问题的需要而设计的,具 有一套固定的符号和语法规则的,人与计算机交流所使用的“ 语言”。程序设计语言可分成机器语言、汇编语言和高级语言 。前两类依赖于计算机硬件,因机器而异,又称为低级语言 ,而高级语言与计算机硬件基本无关,是目前使用非常广泛 的程序设计语言。 1.1 程序与程序设计 计算机程序计算机程序是按照处理问题的具体要求编制的适合 于计算机处理的指令序列。计算机执行程序就是按照指 令序列对提供的数据进行操作处理的过程。 程序设计(Programming)是指设计、编制、调试程序 的方法和过程。实际上是问题解决方案的计算机描述过 程,是目标明确的智力活动。 4 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 高级语言高级语言是一种用接近自然语言和数 学语言的语法、符号描述基本操作的程序设计语言 。高级语言编写的程序不依赖于具体的机器,程序 员编程时无需关心计算机内部的细节,从而大大提 高了编程效率。计算机不能直接执行使用高级语言 编写的程序,需用专门的翻译程序将其转换成机器 语言程序后才能执行。目前,使用较广泛的高级语 言有C、C+、Visual Basic、Java、ASP、JSP、PHP 等。 C语言作为一种计算机高级语言,它不仅具有一般高 级语言的特性,又有一定的低级语言特殊性,已在国际上 广泛流行。 1.2 C语言概述 第1章 C语言程序设计概述 5 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * C 语言的特点 1语言简洁、紧凑,使用方便、灵活。 C语言一共只有32个关键字,9种 控制语句,程序书写形式自由,主要用小写字母表示,压缩了一切不必要的成 分。 2运算符丰富。语言的运算符包含的范围很广泛,共有34种运算符 。语言把括号、赋值、强制类型转换等都作为运算符处理。从而使语 言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实 现在其它高级语言中难以实现的运算。 3数据结构丰富,具有现代语言的各种数据结构。的数据类型有整 型、实型、字符型、数组类型、指针类型、结构体类型和共用体类型等。 能够用来实现非常复杂的数据结构。如线性表、链表、栈、队列、 树、图 等。 4语言是一种结构化语言。具有结构化的控制语句(如if else语句、 whi1e语句、do whi1e语句、for语句)。C 语言是以函数形式提供给用户的, 这些函数可方便的调用,用函数作为程序模块以实现程序的模块化,易于调 试和维护,适合大型软件的研制和调试。 第1章 C语言程序设计概述 6 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * C 语言的特点 5语法限制不大严格,程序设计自由度大。一般的高级语 言语法检查比较严,能检查出几乎所有的语法错误。而语言允 许程序编写者有较大的自由度,因此放宽了语法检查。 6语言允许直接访问物理地址。能进行位(bit)操作,能实 现汇编语言的大部分功能,可以直接对硬件进行操作,因此语 言既具有高级语言的功能,又具有低级语言的许多功能,可用来 写系统软件。语言的这种双重性,使它既是成功的系统描述语 言,又是通用的程序设计语言。有人把称为“高级语言中的低 级语言”,也有人称它为“中级语言”意为兼有高级和低级语言的 特点。 7生成目标代码质量高,程序执行效率高。一般只比汇编 程序生成的目标代码效率低1020%。 8用语言写的程序可移植性好(与汇编语言比)。基本 上不作修改就能用于各种型号的计算机和各种操作系统。 第1章 C语言程序设计概述 7 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 目前在微机上使用的语言有以下几种:Microsoft C、 Borland Turbo C、Quick C、AT 8其它语句:实现其它特殊功能。 15 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 1.5 C程序的基本结构 一个完整的C语言程序,是由一个且只能有一个main()函数 (又称主函数)和若干个其他函数结合而成的,或仅由一个main()函数构成。 【例1.1】用C语言程序在屏幕上输出“Hello! Welcome to class room!” 程序如下: #include main() /*定义主函数,每一个C源程序都必须有且只能有一个主函数main*/ printf(“Hello! Welcome to class room!n“); /*把要输出的内容送到显示器,n是换行符*/ /*函数体必须在一对 之间*/ 运行结果: Hello! Welcome to class room! 16 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 【例1.2】求x的正弦值并输出其正弦值。 #include /*预处理命令,包含stdio.h头文件*/ #include /*预处理命令,包含math.h头文件*/ main() /*定义主函数*/ double x,s; /*定义两个实型变量*/ printf(“input number: “); /*显示提示信息*/ scanf(“%lf“, /* 从键盘获得一个实数给x*/ s=sin(x); /* 求x的正弦,并把它赋给变量s*/ printf(“sin of %lf is %lf “,x,s); /* 输出程序运算结果*/ 运行结果: input number:45 sin of 45.000000 is 0.850904 17 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 【例1.3】包含自定义函数的C程序,输入两个实数,求其中的较大者。 #include “stdio.h“ void main( ) /* 主函数,main前的void表示此函数是“空类型”*/ float max(float x, float y); /* 对被调用函数max的声明 */ float a,b,c; /*定义实型变量a、b、c */ printf(“a,b=“); /*输出提示信息a,b= */ scanf(“%f%f“, /*输入变量a和b的值*/ c=max(a,b); /*调用max函数,将得到的返回值赋给c */ printf(“max=%fn“,c); /*输出c的值*/ float max(float x, float y) /* 定义max函数,函数值为实型,形式参数x,y为实型*/ float z; /*定义实型变量z */ if(xy) z=x; /*如果xy ,则将x 值赋给z */ else z=y; /*否则将y 值赋给z */ return (z); /*将z的值返回给主调用函数*/ 运行结果: a,b=16.8,20.924 max=20.924000 18 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 通过分析以上3个例子,概括出C C语言程序的结构特点如下语言程序的结构特点如下: 1C程序是由函数构成的。 函数是C程序的基本组成单位。一个C源程序中仅有一个main()函 数,除main函数之外可以有若干个其它的函数。每个函数实现某一特定的操 作。因此,函数是C程序的基本单位。 C程序总是从main函数开始执行的,与main函数的位置无关。其 它函数可被主函数调用或相互调用。其它函数可为C语言函数库中的函数( 使用时用#include文件包含命令将其包含进来),也可为用户自己定义的函 数。 2每个函数(包括主函数)的定义分为两个部分:函数由函数首 部和函数体组成,函数的一般结构如下: 函数返回值类型 函数名(函数参数表) /*函数首部*/ 变量定义部分; /*函数体部分*/ 执行语句部分; 第1章 C语言程序设计概述 19 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 3C程序中的语句最后总要有一个“分号(;)” ,作为每个语句的结束。C语言中,分号是程序语句的结束标 志,也是C语句的必要组成部分。但预处理命令、函数首部和 最后一个花括号“之后不能有分号。 4可以用“/*”和“*/”括住任意字符,称为“注释” 。注释可以出现在程序的任何位置上,通常放在一段程序的 开始,用于说明该段程序的功能;或者放在某个语句的后面 ,对该语句进行说明程序编译时,注释将不参加编译,也不 会出现在目标程序中。 5C程序的书写格式很灵活,在一行上可以书写 多个语句,一个语句也可以写在多行上。 第1章 C语言程序设计概述 在程序清单的任何一处都可以插入空格符号或回车符号。但是,从书写清 楚,便于阅读,理解,维护的角度出发,在书写程序时书写程序时 应遵循以下规则应遵循以下规则: 一个说明或一个语句占一行。 用 括起来的部分,通常表示了程序的某一层次结构。一般与该结构语 句的第一个字母对齐,并单独占一行。 低一层次的语句或说明可比高一层次的语句或说明缩进若干空格后书写。 以便看起来更加清楚,增加程序的可读性。在编程时应力求遵循这些规则,以 养成良好的编程风格。 20 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 算法是由一套规则组成的一个过程,是对某一特定问题的求解步 骤的一种描述。算法应当具备以下几个方面的特点: 1一个算法必须保证执行有限步之后结束; 2算法的每一个步骤必须具有确切的定义; 3应对算法给出初始量; 4算法具有一个或多个输出; 5算法的每一步都必须是计算机能进行的有效操作。 程序设计的一般步骤是:设计算法描述算法编写程序检 查程序编译调试和运行程序。 1.6 算法表示 第1章 C语言程序设计概述 21 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 一个程序应包括以下两方面内容: 1对数据的描述。在程序中要指定数据的类型和数据的组织形 式,即数据结构(data structure)。 2对操作的描述。即操作步骤,也就是算法(algorithm)。 数据是操作的对象,操作的目的是对数据进行加工处理,以得到 期望的结果。作为程序设计人员,必须认真考虑和设计数据结构,确 定解决问题的具体方法和步骤,这些具体的方法和步骤,其实就是解 决一个问题的算法。根据算法,依据某种规则编写计算机执行的命令 序列,就是编制程序。学习高级语言的重点,就是掌握分析问题、解 决问题的方法,锻炼分析、分解,最终归纳整理出算法的能力。如C 语言的语法是工具,将解决实际问题的算法步骤用对应的C语言语法 表示出来,就是算法的一个具体实现。著名计算机科学家沃思 (Nikiklaus Wirth)提出一个公式。 程序程序= =数据结构数据结构+ +算法算法 第1章 C语言程序设计概述 22 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 1. 用自然语言表示算法 用自然语言描述求解n!=12345(n1) n的算法。 设用f = f*i来求n!,变量f中存放n!的值,i=1,2,3,n,用自然语言描述 求解n!的算法如下 : (1) 确定n的值; (2) 设i的初始值为1; (3) 设f初始值为1; (4) 如果i n时,执行,否则转出执行; (5) 计算f乘以i的值后,重新赋值给f; (6) 给i加1,然后将值重新赋值给i; (7) 转去执行; (8) 输出f的值,即n!的值,算法结束。 用自然语言表示算法的优点是通俗易懂,但文字冗长,易产生歧义。 除了很简单的问题 ,一般不用自然语 言表示算法。 算法的表示方法有很多种,常用的有:自然语言描述、传统 流程图、N-S流程图、伪代码等。 23 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 2用传统流程图表示算法 传统流程图算法表示法利用几何图形框来表示各种不同性质的操作, 用流程线来指示算法的执行方向。用它表示算法,直观形象、易于理解。 美国标准化协会ANSI规定了一些常用的流程图符号见表1-4,已为世界各 国程序工作者普遍采用。 24 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 一个流程图包括:表示相应操作的框,带箭头的流程线,框内外必要的文字说明。 使用传统流程图描述n!的算法,如图1-1所示。 25 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 3用N-S流程图表示算法 用传统流程图表示算法的优点是直观形象、表示清晰、易于 理解,缺点是传统流程图占篇幅较多,当算法复杂时,画流程图费时 且不方便。1973年美国学者I.Nassi和B.Shneiderman提出了一种新型流 程图:N-S流程图。在N-S流程图中,完全省去带箭头的流程线,全部 算法写在一个矩形框内,在框内还可以包含其它的从属于它的框,或 者说,由一些基本的框组成一个大的框。 使用N-S流程图描述n!的算法如图1-2所示。 N-S流程图适合于结构化程序设计,因而作为编程人员,传统 流程图和N-S流程图都应掌握其使用方法。 第1章 C语言程序设计概述 算法最终要用某种程序设计语言来描述,用算法最终要用某种程序设计语言来描述,用C C语言语言 对求对求n n! !的算法实现如例的算法实现如例1.41.4所示。所示。 26 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 【例1.4】求n!算法的C语言实现。 #include “stdio.h“ void main( ) /* 主函数,main前的void表示此函数是“空类型”*/ int i,n; long f; printf(“Please input n=“); /*输出提示信息Please input n= */ scanf(“%d“, /*从键盘输入 n的值*/ i=1; f=1; /*设i及f初始值为1 */ while(in时结束循环*/ f=f*i; /*计算f乘以i的值后,重新赋值给f */ i=i+1; /*给i加1,然后将值重新赋值给I */ printf(“%d!=%ldn“,n,f); /* 输出f的值,即n!的值*/ 运行结果: Please input n=7 7!=5040 第1章 C语言程序设计概述 27 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 1.7 C语言程序的集成开发环境 1. Turbo C 2.0集成开发环境 Turbo C是美国Borland公司的产品。它是一个集程序建 立、编辑、编译、连接、运行于一体的用菜单驱动的集成软 件环境开发环境,是一个易学、易用、快速高效、方便用户 使用的程序开发工具。Turbo C具有图形库和函数库,具有 查错及协处理器的仿真功能。当前在国内使用比较普遍的是 Turbo C 2.0,它是在MS-DOS操作系统上使用的编译系统, 也可以以全屏方式或窗口方式运行于各种Windows环境中。 28 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 第1章 C语言程序设计概述 Turbo C 主菜单画面: 在编辑过程中: 可使用块操作命令:CTRL+KB(块首定义),CTRL+KK(块尾 定义), CTRL+KC(块复制),CTRL+KY(块删除) , CTRL+KV(块移动),CTRL+KH(块删除) 快捷键命令:CTRL+Y(删除光标所在的一行) 29 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 为了操作的方便,应记住TC中的一些常用功能键: F1:帮助。 F2:将当前文件存盘。 F3:装载原有文件或给新文件命名。 F4:程序运行到光标所在行。 F5:放大或缩小活动窗口切换。 F6:开或关活动窗口切换。 F7:单步运行程序,跟踪进入函数内部运行。 F8:单步运行程序,不跟踪进入函数内部。 F9:生成可执行文件。 F10:菜单与活动窗口相互切换。 CTRL+F9:当前编辑环境下,进行编译、连接且运行 程序。 ALT+F5:将窗口切换到DOS环境,用来查看程序运行 结果。 第1章 C语言程序设计概述 30 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 2. Visual C+集成开发环境 Microsoft Visual C+是微软开发的一个集源程序编辑、代码编译和调试 于一体的C/C+集成开发环境。自1993年Microsoft公司推出Visual C+1.0后, 随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选 工具。实际中,更多的是以Visual C+6.0为平台。Visual C+6.0不仅是一个 C+编译器,而且是一个基于Windows操作系统的可视化集成开发环境( integrated development environment,IDE)。Visual C+6.0由许多组件组成, 包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工 具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。 第1章 C语言程序设计概述 31 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * Visual C+6.0的Developer Studio编译环境 第1章 C语言程序设计概述 32 C C语言程序设计教程语言程序设计教程 宝鸡文理学院计算机科学系 * 3. 运行一个语言程序的一般过程 C语言程序的调试、运行步骤如图1-3所示,运行一个语言程序 的一般过程为: (1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2022年销售经理年终个人工作总结4篇
- 《采用合理的论证方法》课件 2024-2025学年统编版高中语文选择性必修上册
- 2025年春九年级物理下册 第十七、十八章综合测试卷(苏科版)
- 石河子大学《文化遗产概论》2022-2023学年第一学期期末试卷
- 石河子大学《摄影》2022-2023学年第一学期期末试卷
- 石河子大学《机械原理》2022-2023学年第一学期期末试卷
- 沈阳理工大学《专题产品设计》2021-2022学年第一学期期末试卷
- 沈阳理工大学《线性控制系统》2022-2023学年期末试卷
- 沈阳理工大学《热工与流体力学》2022-2023学年第一学期期末试卷
- 沈阳理工大学《计算机网络技术基础》2022-2023学年期末试卷
- 2023年中考物理试题汇编全集(包含答案)
- 转体梁转体施工工法
- YY/T 1833.3-2022人工智能医疗器械质量要求和评价第3部分:数据标注通用要求
- 生物体中结构色
- 博物馆教育资源与当前语文课程融合的探究
- GA 1468-2018寄递企业安全防范要求
- 防范和惩治统计造假、弄虚作假等违法违规行为的政策解读(统计培训课件)
- 地源热泵监理细则
- 人工智能及其应用课件
- CreloxPCRISPRCas技术和病毒载体在课件
- 03 尘源跟踪电磁阀出厂检验报告
评论
0/150
提交评论