C语言程序设计 (第二版) 主编 王曙燕 科学出版社.

Slides:



Advertisements
Similar presentations
甘肃工业职业技术学院信息工程系 2009 年 12 月 张燎 内容提要 ★程序设计语言的发展 ★ C 语言发展史 ★ C 语言程的特点 ★ 学好 C 语言的重要性 ★ C 语言基本结构 ★ C 语言的开发环境 第一章 C 语言概述.
Advertisements

主讲:王幸民 理学院计算机基础教学部.
ASP .NET 程序设计(C#版) 第二版 机械工业出版社同名教材 配套电子教案
C语言程序设计 主讲教师 :张群燕 电话:
授课教师:江星玲 1.
培养目标 1.建立基本的程序设计概念体系,掌握基础程序设计方法。
Tool Command Language --11级ACM班 金天行.
第一章 C语言概述 计算机公共教学部.
杨玉蓓 主讲 武汉工程大学邮电与信息工程学院
请将手机调整到静音状态 实验网站:program3.ccshu.net 资源网站:class.ccshu.org/ /
C语言程序设计.
Oracle数据库 Oracle 子程序.
C语言实验 第一课 标题:学号+姓名.
C++中的声音处理 在传统Turbo C环境中,如果想用C语言控制电脑发声,可以用Sound函数。在VC6.6环境中如果想控制电脑发声则采用Beep函数。原型为: Beep(频率,持续时间) , 单位毫秒 暂停程序执行使用Sleep函数 Sleep(持续时间), 单位毫秒 引用这两个函数时,必须包含头文件
第三章 C语言基础 学习目标: 熟练掌握:C语言的基本数据类型、运算符及表达式 掌握:常见的输入、输出函数使用方法;
4.3函数 4.3.1函数的概念及定义 1、函数的概念: 可以被其它程序调用具有 特定功能的一段相对独立的 程序(模块),称函数。
第1章 程序设计和C语言 1.1 什么是计算机程序 1.2 什么是计算机语言 1.3 C语言的发展及其特点 1.4 最简单的C语言程序
高级语言程序设计 主讲人:陈玉华.
第5章 函数与预处理 《 C语言程序设计》 (Visual C++ 6.0环境) 本章导读
第一章 C语言概述.
C的發展史 C程式初體驗 C程式設計基本注意事項 上機實習課程
编译原理与技术 2018/11/30 《编译原理与技术》讲义.
什么是C语言 编写HelloWorld程序 注释
走进编程 程序的顺序结构(二).
C 语 言 程 序 设 计 王曙燕 主 编 曹 锰 副主编 王小银负责ppt的制作
程序设计基础.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
第五讲 四则运算计算器(一) 精品教程《C#程序设计与应用(第2版)清华大学出版社 谭恒松 主编
第二章 Java语言基础.
第1章 概述 本章要点: C语言程序结构和特点 C语言程序的基本符号与关键字 C语言程序的编辑及运行 学习方法建议:
SOA – Experiment 2: Query Classification Web Service
第一章 函数与极限.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
1.3 C语言的语句和关键字 一、C语言的语句 与其它高级语言一样,C语言也是利用函数体中的可执行 语句,向计算机系统发出操作命令。按照语句功能或构成的不 同,可将C语言的语句分为五类。 goto, return.
C语言程序设计 主讲教师:陆幼利.
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
第 二 章 数据类型、运算符与表达式.
程序设计基础(C程序设计) 主讲:吴华洋 Mobile: Office:
C语言程序设计.
第一章 程序设计和C语言 主讲人:高晓娟 计算机学院.
C语言程序示例: 1.输入10个数,按从小到大的顺序排序。 2.汉诺塔问题。.
C程序设计.
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
7.1 C程序的结构 7.2 作用域和作用域规则 7.3 存储属性和生存期 7.4 变量的初始化
目录 1.1程序设计语言 1.2程序结构及其特点 1.3Visual C++6.0的安装及使用 1.
C程序设计.
第一章 C语言概述 教师:周芸.
第4章 Excel电子表格制作软件 4.4 函数(一).
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
第九节 赋值运算符和赋值表达式.
项目1 C程序设计起步 学习目标: 通过该项目你可以知道: C语言的用途。 C语言的基本符号和关键字。 C语言程序的结构及特点。
第一章 C语言概述 目录 什么是语言、程序 C语言的历史与发展 C语言的书写形式与程序结构 运行C语言的步骤与方法
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
ASP.NET实用教程 清华大学出版社 第4章 C#编程语言 教学目标 教学重点 教学过程 2019年5月5日.
第二章 Java基本语法 讲师:复凡.
本节内容 C语言的汇编表示 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第二章 Java基本语法 讲师:复凡.
第五章 逻辑运算和判断选取控制 §5.1 关系运算符和关系表达式
第二节 C语言的特点.
第1章程序设计和C语言.
《数据结构与算法设计》第一部分 面向对象的C++程序设计基础.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
本节内容 动态链接库 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
基本知识 数据类型、变量、常量、运算符.
第三章 流程控制 程序的运行流程 选择结构语句 循环结构语句 主讲:李祥 时间:2015年10月.
顺序结构程序设计 ——关于“字符串”和数值.
实验六、COM类型病毒分析实验 实验开发教师: 刘乃琦 谌黔燕.
编译原理实践 6.程序设计语言PL/0.
第二章 简单数据类型 §2.1 数据类型概述 §2.2 变量和常量 §2.3 简单数据类型 §2.4 简单数据类型的相互转换
Presentation transcript:

C语言程序设计 (第二版) 主编 王曙燕 科学出版社

第一章 C语言概述

1.1 C语言的发展和特点 CPL语言:剑桥大学,1963年 BCPL语言:剑桥大学,1967年 B语言:Bell实验室,1970年 发展过程 B语言:Bell实验室,1970年 在PDP机器上用其编写UNIX系统 CPL语言:剑桥大学,1963年 BCPL语言:剑桥大学,1967年 C语言:Bell实验室,1972~1973年用其改写 UNIX系统 经简化 进一步简化 保持精练、接近硬件的优点, 克服数据类型过少的不足 【名词】 ●ALGOL(algorithmic language算法语言) ●CPL(复合编程语言) ●BCPL(基本复合编程语言) ●ANSI(美国国家标准化协会) ●ISO(国际标准化组织) 从软件类型来看—— ◆面向过程 常用—Turbo C(PC机版) ◆面向对象 常用—C++/Visual C++(可视化) 最新:为Windows和Web应用程序提供动态开发环境的Visual C++.NET(C#)

1.1 C语言的发展和特点 C标准与版本 1983年:ANSI C 1987年:87 ANSI C: 1990年:国际标准的ANSI C 从软件类型来看 面向过程:常用—Turbo C(PC机版) Visual C (可视化) 面向对象:常用—C++/Visual C (可视化) 最新:为Windows和Web应用程序提供动态开发环境的Visual C++.NET(C#)

1.1 C语言的发展和特点 学习编程好比学习写作 学语基:学习数据类型、控制结构、语法规则等 写文章:掌握程序分析、算法与编程等 循次渐进 阅读/分析程序→摹仿编程→掌握常见程序模块→简单程序→复杂编程 多看参考书和现有程序 重视上机,切实掌握程序调试技术

1.1 C语言的发展和特点 增加学习难度 语言简洁,表达能力强,易于理解 只有32个关键字,9种控制语句 数据构造能力强 运算符和数据结构丰富 程序书写格式自由 程序设计结构化、模块化 可直接访问物理地址,实现对硬件和低层系统软件的访问 语言生成的代码质量高 可移植性好 增加学习难度

1.2 C语言的程序结构 /* The first C Program*/ 注释 #include <stdio.h> 例1.1 第一个程序 Hello,World! /* The first C Program*/ #include <stdio.h> main() { printf(“Hello,World!”); } 注释 编译预处理 函数 printf(“Hello,World!\n”); 语句 输出: Hello,World!

C程序的上机步骤 用户 编辑 编译 连接 运行 对源文件进行语法和逻辑结构检查 将目标程序、库函数或其他目标程序连接成一个可执行文件 编译 出错 连接 出错 运行 出错 用户 C源程序 .c文件 目标程序 .OBJ文件 可执行程序 .exe文件 结 果 编辑 编译 连接 运行 对源文件进行语法和逻辑结构检查 将目标程序、库函数或其他目标程序连接成一个可执行文件

程序设计语言处理流程 名词: 【源程序】用汇编语言或高级语言编写的程序 【目标程序】经翻译程序翻译生成的程序 【可执行程序】经连接程序处理过的程序

#include <stdio.h> main( ) { int a, b, sum; 例1.2 求两个整数之和 /* Calculate the sum of two integers*/ #include <stdio.h> main( ) { int a, b, sum; printf(“Please input two intergers:”); scanf(“%d%d”, &a, &b); sum=a+b; printf(“sum=%d”, sum); } 输入:5 10 输出:sum=15

例1.3 求两个整数的最大值 输入:5 10 输出:max=10 /* Get the max-value of two integers*/ #include <stdio.h> int GetMax(int a, int b) { int max; if(a>=b) max=a; else max=b; return max; } main( ) { int a, b, max; printf(“Please input two intergers:”); scanf(“%d%d”, &a, &b); max=GetMax(a, b); printf(“max=%d”, max); 注释 例1.3 求两个整数的最大值 预处理命令 函数 输入:5 10 输出:max=10 语句

{ 说明语句; 执行语句; } int GetMax(int a, int b) { int max; if(a>=b) max=a; else max=b; return max; } 函数类型 函数名(形参类型说明表) { 说明语句; 执行语句; }

例 求两个实数的最大值 输入:5.6 10.8 输出:max=10.8 #include <stdio.h> float GetMax(float a, float b) { float max; if(a>=b) max=a; else max=b; return max; } main( ) { float a, b, max; printf("Please input two float number:"); scanf("%f%f", &a, &b); max=GetMax(a, b); printf("max=%f", max); 例 求两个实数的最大值 输入:5.6 10.8 输出:max=10.8

1.2 C语言的程序结构 格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式 main( ) { int i , j , sum; sum=0; for(i=1; i<10;i++) for(j=1;j<10;j++) sum+=i*j ; } printf(“%d\n”,sum); 格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式 main( ) { ………………. ……………… ………….. ……… ………. …………… ……………. ………………. ……………….. } 优秀程序员的素质之一: 使用TAB缩进 { }对齐 有足够的注释 有合适的空行

1.2 C语言的程序结构 函数与主函数 程序由一个或多个函数组成 必须有且只能有一个主函数main() 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 程序语句 C程序由语句组成,用“;”作为语句终止符 注释 /* */为注释,不能嵌套,不产生编译代码 非法 例: /*This is the main /* of example1.1*/ */ 编译预处理命令 例#include <stdio.h>

1.3 C语言的基本语法成分 主要分为:基本字符,标识符两种。 字符集 字符是可以区分的最小符号,是构成程序 的基础。包括三方面: 英文字母:a~z和A~Z; 数字:0~9; 特殊字符:空格 !# % 等 由字符集可构成进一步的语法成分,例: 标识符、关键字和特殊运算符等。

长度:一般系统规定标识符的长度<=8。 标识符的选择要有意义:例如,name, city, data, sum, average等 标识符在程序中用来标识各种程序成分, 命名程序中的一些实体。包括三方面: 字母; 2. 数字; 3. 下划线:“_” 注意: 开头:必须是英文字母或下划线; 大小写敏感:大小写字母是不同的字符; 长度:一般系统规定标识符的长度<=8。 标识符的选择要有意义:例如,name, city, data, sum, average等

1.3 C语言的基本语法成分-标识符 标识符的分类 1.系统定义标识符 具有固定名字和特定含义的标识符 分为关键字和预定义标识符 2.用户定义标识符 用于对用户使用的变量、数组、函数等操作对象进行命名

1.3 C语言的基本语法成分-标识符 关键字,预定义标识符,用户标识符 32个关键字:(由系统定义,不能重作其它定义) 数据类型: int、char、float、double、short、long、void、signed、unsigned、enum、struct、union、const、typedef、volatile 存储类别: auto、static、register、extern 语句命令字: if、else、switch、case、default、for、do while、goto、 break、continue、return 运算符: sizeof

1.3 C语言的基本语法成分-标识符 关键字,预定义标识符,用户标识符 1.条件判断语句 if ( ) …else … switch ( ) { … } 2.循环控制语句 for ( ) … while ( ) … do … while ( ) 3.转移语句 break、continue、goto return 9种控制语句:

1.3 C语言的基本语法成分-标识符 关键字,预定义标识符,用户标识符 系统标准库函数 scanf、printf、putchar、getchar、strcpy、strcmp、sqrt等 编译预备处理命令 include、define等

1.3 C语言的基本语法成分 对用户定义标识符的规定 不能含有除字母、数字和下划线“_”外的其他字符 必须以字母或下划线“_”开头 标识符中大小写字母含义不同 长度:一般系统规定标识符的长度<=8。 标识符的选择要有意义:例如,name, city, data, sum, average等 不能使用关键字 C语言中有一些在系统中早已定义好的标识符——关键字,关键字不能作为一般标识符使用,如int,float,char,double等,因为编译程序对这些标识符已赋予了特殊的含义,已为语言本身专用,故不能使用。

1.3 C语言的基本语法成分 运算符----34种运算符: 算术运算符:+ - * / % ++ -- 关系运算符:< <= == > >= != 逻辑运算符:! && || 位运算符 :<< >> ~ | ^ & 赋值运算符:= 及其扩展 条件运算符:? : 逗号运算符:, 指针运算符:* & 求字节数 :sizeof 强制类型转换:(类型) 分量运算符:. -> 下标运算符:[] 其它 :( ) -

1.4 如何学习C语言 记忆C语法规则,C关键字 记忆各种数据类型名称及取值范围 记忆变量、函数等命名规则 记忆变量、函数等命名规则  记忆常用的库函数(名称、功能、参数含义及返回值含义) 养成良好的编程风格:层次缩进显示程序流程 独立、认真完成作业和上机任务大量的上机编程练习

练习:编写一个area.c程序,输入半径,求圆面积。 #define PI 3.14159 #include <stdio.h> main( ) { float r,s; scanf(“%f ”,&r); s=PI * r * r; printf (“半径R=%f 时,面积S=%f \n”,r,s); } /*编译预处理--宏替换*/ /*编译预处理--文件包含*/ /*主函数*/ /*定义变量r、s类型为 单精度实型*/ /*变量r赋值*/ /*计算圆面积s*/ /*输出结果*/

练习:编写一个area.c程序,输入半径,求求圆面积。 #define PI 3.14159 #include <stdio.h> main( ) { float r,s; scanf(“%f ”,&r); s=PI * r * r; printf (“R=%f , S=%f \n”,r,s); } 练习:编写一个area.c程序,输入半径,求求圆面积。 程序的不足: 输入变量时候没有提示语句; 如果半径r为负值,也会有正常的s值输出。 输出结果的小数位数为6位,与习惯不符。

练习:编写一个area.c程序,输入半径,求求圆面积。 #define PI 3.14159 #include <stdio.h> main( ) { float r,s; printf(“Please input the r: ”); scanf(“%f ”,&r); if (r<0) printf(“the radius is negative!”) ; else s=PI* r *r; printf(“R=%.3f,S=%.3f \n”,r,s); } 练习:编写一个area.c程序,输入半径,求求圆面积。 positive negative

练习:求三个整数的平均值。 #include <stdio.h> main() { int a,b,c; float aver; printf("please input the a,b,c: "); scanf("%d%d%d",&a,&b,&c); aver=(a+b+c)/3.0; printf("the average is %f.\n",aver); }

练习:求三个整数的平均值。 #include <stdio.h> float average(int x,int y,int z) { float av; av=(x+y+z)/3.0; return av; } main() int a,b,c; float aver; printf("please input the a,b,c: "); scanf("%d%d%d",&a,&b,&c); aver=average(a,b,c); printf("the average is %f.\n",aver); 练习:求三个整数的平均值。

学习要点: 程序设计语言的概念和发展。 了解C语言的发展、标准以及特点。 熟练掌握C语言的基本语法成分, (字符集、标识符、运算符)。 熟悉C语言程序的结构和书写要求。 重点:掌握标识符构成规则,熟记关键字。