c语言程序设计引言_第1页
c语言程序设计引言_第2页
c语言程序设计引言_第3页
c语言程序设计引言_第4页
c语言程序设计引言_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

1、C语言程序设计语言程序设计上课时间、地点上课时间、地点: : 1-161-16周周一周周一 3-43-4节节 1-81-8周周三周周三 7-87-8节节 知行楼计算中心(看大屏)知行楼计算中心(看大屏) 联系方式:联系方式: 刘宇明刘宇明电子邮箱:电子邮箱:办公室:知行楼办公室:知行楼208208电话:电话:67391747-60867391747-608上课时间、地点上课时间、地点: : 1-161-16周周三周周三 1-21-2节节 1-81-8周周五周周五 7-87-8节节 知行楼计算中心(看大屏)知行楼计算中心(看大屏) 联系方式:联系方式: 刘宇明刘宇明电子邮箱:电子邮箱:办公室:知

2、行楼办公室:知行楼208208电话:电话:67391747-60867391747-608如何尽快学会用如何尽快学会用C语言进行程序设计语言进行程序设计u了解程序设计语言(了解程序设计语言(C语言)语言)u模仿、改写、编写模仿、改写、编写u通过不断的编程实践,逐步领会和掌握程通过不断的编程实践,逐步领会和掌握程序设计的基本思想和方法。序设计的基本思想和方法。Chap 1 引引 言言本章要点本章要点u什么是程序?程序设计语言包含哪些功能?什么是程序?程序设计语言包含哪些功能?u程序设计语言在语法上包含哪些内容?程序设计语言在语法上包含哪些内容?u结构化程序设计有哪些基本的控制结构?结构化程序设计

3、有哪些基本的控制结构?uC语言有哪些特点?语言有哪些特点?uC语言程序的基本框架如何?语言程序的基本框架如何?u形成一个可运行的形成一个可运行的C语言程序需要经过哪些步骤?语言程序需要经过哪些步骤?u如何用流程图描述简单的算法?如何用流程图描述简单的算法?1.1 一个一个C语言程序语言程序例例1-1求阶乘问题。输入一个正整数求阶乘问题。输入一个正整数n,输出输出n!。 #include /* 编译预处理命令编译预处理命令 */int main(void) /* 主函数主函数 */int n; /* 变量定义变量定义 */int factorial(int n); /* 函数声明函数声明 */

4、scanf(%d, &n); /* 输入一个整数输入一个整数 */printf(%dn, factorial(n); /* 调用函数计算阶乘调用函数计算阶乘 */ return 0; int factorial(int n) /* 定义计算定义计算 n! 的函数的函数 */int i, fact = 1; for(i = 1; i (大于)(大于)程序设计语言的语法程序设计语言的语法n C语言的主要语法单位语言的主要语法单位(1)表达式)表达式: 运算符与运算对象组合就形成了表运算符与运算对象组合就形成了表达式。如,达式。如,2 + 3 * 4(2)变量定义)变量定义: 变量也有数据类型,所以

5、在定义变量也有数据类型,所以在定义变量时要说明相应变量的类型。如变量时要说明相应变量的类型。如: int i;(3)语句语句: 语句是程序最基本的执行单位,程序语句是程序最基本的执行单位,程序的功能就是通过对一系列语句的执行来实现的。的功能就是通过对一系列语句的执行来实现的。(4)函数定义与调用)函数定义与调用 (5)输入与输出)输入与输出C C语言的基本语句:语言的基本语句:n数据定义语句数据定义语句n赋值语句赋值语句n函数调用语句函数调用语句n表达式语句表达式语句n流程控制语句流程控制语句n复合语句复合语句n空语句空语句n其他语句其他语句1.3 C语言的发展历史与特点语言的发展历史与特点

6、n 历史历史 1972年:贝尔实验室的年:贝尔实验室的Dennis Ritchie在在B语语言的基础上设计并实现了言的基础上设计并实现了C语言。语言。1978年:年:B.W.Kernighan和和D.Ritchie(简称简称K & R)合著的合著的The C Programming Language是各种是各种C语言版本的基础,称之为语言版本的基础,称之为旧标准旧标准C语言。语言。1983年:美国国家标准化协会(年:美国国家标准化协会(ANSI)制定了制定了新的新的C语言标准,称语言标准,称ANSI C。C语言的特点语言的特点 1C语言是一种结构化语言语言是一种结构化语言2C语言语句简洁、紧凑

7、,使用方便、灵活语言语句简洁、紧凑,使用方便、灵活32个关键字个关键字,9种控制语句,程序书写形式自由种控制语句,程序书写形式自由3丰富的运算符号丰富的运算符号 34运算符运算符 15优先级优先级4丰富的数据类型丰富的数据类型 整型、实型、字符型、数组、指针、结构体等整型、实型、字符型、数组、指针、结构体等5C语言程序易于移植语言程序易于移植 C语言将与硬件有关的因素从语言主体中分离出来,语言将与硬件有关的因素从语言主体中分离出来,通过库函数或其他实用程序实现它们通过库函数或其他实用程序实现它们 6C语言有强大的处理能力语言有强大的处理能力7生成的目标代码质量高,运行效率高生成的目标代码质量高

8、,运行效率高比汇编低比汇编低10%-20%8数据类型检查不严格,表达式出现二义性,不具备数据数据类型检查不严格,表达式出现二义性,不具备数据越界自动检查功能,运算符的优先级与结合性对初学者难越界自动检查功能,运算符的优先级与结合性对初学者难于掌握。于掌握。C 语言中语言中大小写字母大小写字母代表代表不同含义不同含义n32个关键字个关键字nturbo C扩充了扩充了11个关键字个关键字asm _cs _ds _es _ss cdecl far huge interrupt near pascaln9种控制结构种控制结构 goto if switch for do while break cont

9、inue returnautobreakcasecharconstcontinuedefaultdo double else enum extern float for goto if int long register return short signed static sizof struct switch typedef union unsigned void volatilewhile 书写格式的特点:书写格式的特点:习惯用小写英文字母习惯用小写英文字母一个说明或一个语句占一行一个说明或一个语句占一行每个语句以分号结束,可一句多行,多语句一行每个语句以分号结束,可一句多行,多语句一行

10、用用/*/作注释作注释除变量名、函数名、关键字外,可在程序的任何地方加入除变量名、函数名、关键字外,可在程序的任何地方加入适量的空格和空行适量的空格和空行低一层次的语句或说明可比高一层次的语句或说明缩进若低一层次的语句或说明可比高一层次的语句或说明缩进若干后书写干后书写1.4 实现问题求解的过程实现问题求解的过程 问题:求问题:求1100间所有偶数的和。间所有偶数的和。1问题分析与算法设计问题分析与算法设计 求在一定范围内(求在一定范围内(1100)、满足一定条件)、满足一定条件(偶数偶数)的若干的若干整数的和,求整数的和,求累加和累加和。 思路思路:设置一个变量:设置一个变量(sum),其初

11、值为其初值为0,然后在,然后在1100的的数中数中(i)寻找偶数寻找偶数,将它们一个一个累加到将它们一个一个累加到sum中。中。n一步累加:一步累加:sum = sum + i; n重复累加,用循环语句实现,在循环过程中:重复累加,用循环语句实现,在循环过程中:(1) 判别判别 i 是不是偶数:用分支控制语句来实现。是不是偶数:用分支控制语句来实现。(2) 对循环次数进行控制:通过对循环次数进行控制:通过 i 值的变化值的变化问题分析与算法设计问题分析与算法设计 思路思路 确定确定算法算法算法算法:一组明确的解决问题的步骤,它产生结一组明确的解决问题的步骤,它产生结果并可在有限的时间内终止。果

12、并可在有限的时间内终止。算法的描述:算法的描述:n自然语言自然语言n伪代码伪代码n流程图:算法的图形表示法流程图:算法的图形表示法 sum = 0i = 1i = 100i 是偶数?是偶数?sum=sum+ii=i+1输出输出sum真真真真假假假假编辑程序编辑程序2编辑程序编辑程序生成程序的源文件,生成程序的源文件,C语言源文件的后缀为语言源文件的后缀为 .c / .cpp#include int main(void)int i, sum = 0; for(i = 1; i 计算机直接能理解的指令序列计算机直接能理解的指令序列编译器:对源程序进行词法分析、语法与语义分析,生编译器:对源程序进行

13、词法分析、语法与语义分析,生成可执行的代码。成可执行的代码。编译程序指出程序中的编译程序指出程序中的语法错误语法错误 运行与调试运行与调试4运行与调试运行与调试经过编辑、编译、连接,生成执行文件后,就可以在编程环境或操作经过编辑、编译、连接,生成执行文件后,就可以在编程环境或操作系统环境中运行该程序。系统环境中运行该程序。如果程序运行所产生的结果不是你想要的结果,这是程序的如果程序运行所产生的结果不是你想要的结果,这是程序的语义错误语义错误(逻辑错误)(逻辑错误)。语法错误语法错误 VS 逻辑错误逻辑错误调试:在程序中查找错误并修改错误的过程。调试:在程序中查找错误并修改错误的过程。调试的方法调试的方法n设置断点设置断点n单步跟踪单步跟踪调试是一个需要耐心和经验的工作,也是程序设计最基本的技能之一。调试是一个需要耐心和经验的工作,也是程序

温馨提示

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

评论

0/150

提交评论