全套课件 C语言程序设计教程
合集下载
C语言程序设计教程(第二版)第二版ppt课件(完整版)
[案例1.2] 由main()函数和1个max()函数构成的C语 言程序。
#include “stdio.h” #include “conio.h” void main( )
{ int num1, num2; printf(“Input the first integer number: ”); scanf(“%d”, &num1); printf(“Input the second integer number: ”); scanf(“%d”, &num2); printf(“max = %d\n”, max(num1, num2)); getch(); }
2022/1/12
17
[案例1.2]中的主函数main( ),也可写成如下格式:
……
void main() { int num1, num2; printf(“Input the first integer number: ”); scanf(“%d”, &num1); printf(“Input the second integer number: ”); scanf(“%d”, &num2); printf(“max=%d\n”, max(num1, num2)); }
21世纪高职高专新概念教材
• C语言程序设计教程(第二版)
2022/1/12
1
第1章 C语言概述
教学目的: 掌握C语言的程序结构,函数结构,源程 序书写规则,以及TC++3.0的基本操作。 了解C语言的特点和语句。
2022/1/12
2
教学内容: 1.1 发展简史和特点 1.2* 程序结构与函数结构 1.3* 源程序书写规则 1.4 C语言的语句 1.5* TC++3.0基本操作
#include “stdio.h” #include “conio.h” void main( )
{ int num1, num2; printf(“Input the first integer number: ”); scanf(“%d”, &num1); printf(“Input the second integer number: ”); scanf(“%d”, &num2); printf(“max = %d\n”, max(num1, num2)); getch(); }
2022/1/12
17
[案例1.2]中的主函数main( ),也可写成如下格式:
……
void main() { int num1, num2; printf(“Input the first integer number: ”); scanf(“%d”, &num1); printf(“Input the second integer number: ”); scanf(“%d”, &num2); printf(“max=%d\n”, max(num1, num2)); }
21世纪高职高专新概念教材
• C语言程序设计教程(第二版)
2022/1/12
1
第1章 C语言概述
教学目的: 掌握C语言的程序结构,函数结构,源程 序书写规则,以及TC++3.0的基本操作。 了解C语言的特点和语句。
2022/1/12
2
教学内容: 1.1 发展简史和特点 1.2* 程序结构与函数结构 1.3* 源程序书写规则 1.4 C语言的语句 1.5* TC++3.0基本操作
C语言ppt课件(完整版)
编译 链接 v0o1i0d1q0u0it(1v1oi0d1);110001 11010011 01110001 11010011 01110001 11010011
源程序 目标程序 可执行程序 v0o1i1d1s0h0o0w1Ta1b1le0(1v0o0id1);1 01110001 11010011 01110001 11010011 10101010
11010011 11010011
01110001 10110111
v0o1i0d1h0a0n1d1le_0m11e1n0u(0v0o1id)1;1010011 01110001 11010011 01110001 11010011
i1n1t1m1e0n0u0_0se0le1c1t1(v0o0id0)1; 11010011 01110001 11010011 01110001 11010011
sum=number1+number2;
printf("\n%d+%d=%d",number1,number2,sum); }
返 回 上一页
பைடு நூலகம்下一页
思考:加法器的局限性在于,它只能对整数 进行加法运算,是否可以编写这样的程序,可 以对任意两个整数进行加和减运算呢?
分析:该计算器实现两个功能:加法功能和减 法功能,因此,分别编写两个函数实现这两个 功能:加法函数sum( ),减法函数sub( )。
返回
下一页
标志符的命名规则:
(1)标识符只能由字母、数字、下划线组成,且 第一个字符不能为数字。
(2)C语言区分大小写。 (3)标识符的名字不能和C语言中的关键字和特
定字相同。 (4)标识符的长度最好不要超过8个字符。 (5)标识符的命名最好做到见名知意。如age用
源程序 目标程序 可执行程序 v0o1i1d1s0h0o0w1Ta1b1le0(1v0o0id1);1 01110001 11010011 01110001 11010011 10101010
11010011 11010011
01110001 10110111
v0o1i0d1h0a0n1d1le_0m11e1n0u(0v0o1id)1;1010011 01110001 11010011 01110001 11010011
i1n1t1m1e0n0u0_0se0le1c1t1(v0o0id0)1; 11010011 01110001 11010011 01110001 11010011
sum=number1+number2;
printf("\n%d+%d=%d",number1,number2,sum); }
返 回 上一页
பைடு நூலகம்下一页
思考:加法器的局限性在于,它只能对整数 进行加法运算,是否可以编写这样的程序,可 以对任意两个整数进行加和减运算呢?
分析:该计算器实现两个功能:加法功能和减 法功能,因此,分别编写两个函数实现这两个 功能:加法函数sum( ),减法函数sub( )。
返回
下一页
标志符的命名规则:
(1)标识符只能由字母、数字、下划线组成,且 第一个字符不能为数字。
(2)C语言区分大小写。 (3)标识符的名字不能和C语言中的关键字和特
定字相同。 (4)标识符的长度最好不要超过8个字符。 (5)标识符的命名最好做到见名知意。如age用
C语言程序设计教程PPT完整全套教学课件
联合体定义和使用场景分析
联合体定义
使用`union`关键字定义联合体类型,指定联合体名 称和成员列表。
内存共享
联合体的所有成员共享同一块内存空间。
使用场景
适用于多种数据类型但只需存储其中一种的场景, 如混合类型的数据存储和处理。
枚举类型定义及应用举例
枚举类型定义
使用`enum`关键字定义枚举类型,指定枚举名称和枚举常量列表。
01
跳转语句的概念和 特点
改变程序执行流程,实现程序的 跳转。
02
跳转语句的语法和 示例
break语句、continue语句、 goto语句等。
03
跳转语句的应用场 景
适用于需要中断循环、跳过某些 操作等特殊情况。
04
函数与模块化设计
函数定义和调用
函数定义的基本语法
返回类型 函数名(参数列表) { 函数体 }
将数组元素作为实参传递给形参,形参和实参类型必须一致;
数组名作为函数参数
将数组名作为实参传递给形参,形参和实参类型可以不一致,但形 参数组的大小必须大于等于实参数组的大小;
多维数组作为函数参数
多维数组可以作为函数参数传递,但需要注意多维数组的传递方式 和一维数组的传递方式不同。
06
指针与动态内存管理
02
数据类型、运算符与表达式
基本数据类型
01
整型(int)
02
浮点型(float、 double)
字符型(char)
03
04
布尔型(bool)
常量与变量
常量
在程序运行过程中,其值不能被改变 的量。
变量
在程序运行过程中,其值可以被改变 的量。
运算符和表达式
《C语言程序设计教程》PPT课件
② 标准输出文件,文件指针为stdout,系统指定为 显示器。
③ 标准错误输出文件,文件指针为stderr,系统指 定为显示器,输出错误信息。
10.1 文件的概述
11
10.1.2 文件的打开与关闭
操作文件的一般步骤
打开文件 读写文件 关闭文件 打开量文的件函C:语数建配言,立一的用用个输于户文入完程件输成序缓出对与冲函数文区数据件。库文的中件联提的系供建,了立为大、文件分 读写数文据件的:读是写指、对数文据件的的追读加、等写操、作追。加和定位操作。 关闭文件在:程切序断中文调件用与这程些序函的数联时系,,必释须放先文用件缓冲
}
FFIILLE;E *文件指针变量/名* ;This is the FILE object */
10.1 文件的概述
10
10.1.1 文件和文件指针
4. 标准文件
标准文件是外部设备中的三个特殊的设备文件。它们 的文件指针是系统定义的,并由系统自动打开和关闭。这 三个标准文件分别是:
① 标准输入文件,文件指针为stdin,系统指定为 键盘。
include命区令。包含stdio.h文件。
10.1 文件的概述
12
10.1.2 文件的打开与关闭
1. 文件打开函数fopen( )
常用的调用形式: FILE *fp; fp = fopen(文件名, 文件使用方式); 文件名:需要打开的文件名称(字符串)。 文件使用方式:是具有特定含义的符号。
缓冲区cha地r 址和大小f等d; 。 /* File descriptor
*/
FILE在类usnhCso型语irgt是n言ed系中ch统a,r定无hb义os论li的dz;e对;,磁包//**盘含UBnu文g在fefte件scrtcs还dhiazi是reo.i设fh头n备o 文b文uf件*f件/er中*/
③ 标准错误输出文件,文件指针为stderr,系统指 定为显示器,输出错误信息。
10.1 文件的概述
11
10.1.2 文件的打开与关闭
操作文件的一般步骤
打开文件 读写文件 关闭文件 打开量文的件函C:语数建配言,立一的用用个输于户文入完程件输成序缓出对与冲函数文区数据件。库文的中件联提的系供建,了立为大、文件分 读写数文据件的:读是写指、对数文据件的的追读加、等写操、作追。加和定位操作。 关闭文件在:程切序断中文调件用与这程些序函的数联时系,,必释须放先文用件缓冲
}
FFIILLE;E *文件指针变量/名* ;This is the FILE object */
10.1 文件的概述
10
10.1.1 文件和文件指针
4. 标准文件
标准文件是外部设备中的三个特殊的设备文件。它们 的文件指针是系统定义的,并由系统自动打开和关闭。这 三个标准文件分别是:
① 标准输入文件,文件指针为stdin,系统指定为 键盘。
include命区令。包含stdio.h文件。
10.1 文件的概述
12
10.1.2 文件的打开与关闭
1. 文件打开函数fopen( )
常用的调用形式: FILE *fp; fp = fopen(文件名, 文件使用方式); 文件名:需要打开的文件名称(字符串)。 文件使用方式:是具有特定含义的符号。
缓冲区cha地r 址和大小f等d; 。 /* File descriptor
*/
FILE在类usnhCso型语irgt是n言ed系中ch统a,r定无hb义os论li的dz;e对;,磁包//**盘含UBnu文g在fefte件scrtcs还dhiazi是reo.i设fh头n备o 文b文uf件*f件/er中*/
C程序设计基础-PPT课件
第二章 C程序设计基础
2.1 常量和变量
注意符:号常量在其作用域内不能再赋值。
符号常量的好处:(1)含义清楚。(2)需改变时,“一改全改”。
2024/10/14
1
2.1 常量和变量
注意:
1、变量中的值:变量必须要有值才能参与运算,(如果一个变量
没有赋值,则该变量是一个随机值)变量可以在定义后与其赋值,也可以
2024/10/14
16
2.3 运算符与表达式
逻辑运算符和逻辑表达式
符号
例子 0&&0=0、0&&1=0、1&&0=0、1&&1=1
0||0=0、0||1=1、1||0=1、1||1=1 !1=0、!0=1
使用说明: ➢1、逻辑非优先级高于逻辑与和逻辑或,逻辑与和逻辑或优先级相同; ➢2、C语言规定:非0都表示“真”,只有0表示“假”; 例:6<4&&7>-3+!5
14
2.3 运算符与表达式
赋值运算符与赋值表达式
符号
功能
例子
=
将表达式右边的数据赋值给左边的变量
x=3+a
+=
将表达式右边的计算结果加上左边的变 量再赋值给左边的变量
x+=3+a等价于x=x+(3+a)
-=
将表达式右边的计算结果减去左边的变 量再赋值给左边的变量
x-=3+a等价于x=x-(3+a)
6~7
双精度(double): 8B 10-308 ~ 10308 15~16
长双精度: 16B 10-4931 ~ 104932 18~19
2.1 常量和变量
注意符:号常量在其作用域内不能再赋值。
符号常量的好处:(1)含义清楚。(2)需改变时,“一改全改”。
2024/10/14
1
2.1 常量和变量
注意:
1、变量中的值:变量必须要有值才能参与运算,(如果一个变量
没有赋值,则该变量是一个随机值)变量可以在定义后与其赋值,也可以
2024/10/14
16
2.3 运算符与表达式
逻辑运算符和逻辑表达式
符号
例子 0&&0=0、0&&1=0、1&&0=0、1&&1=1
0||0=0、0||1=1、1||0=1、1||1=1 !1=0、!0=1
使用说明: ➢1、逻辑非优先级高于逻辑与和逻辑或,逻辑与和逻辑或优先级相同; ➢2、C语言规定:非0都表示“真”,只有0表示“假”; 例:6<4&&7>-3+!5
14
2.3 运算符与表达式
赋值运算符与赋值表达式
符号
功能
例子
=
将表达式右边的数据赋值给左边的变量
x=3+a
+=
将表达式右边的计算结果加上左边的变 量再赋值给左边的变量
x+=3+a等价于x=x+(3+a)
-=
将表达式右边的计算结果减去左边的变 量再赋值给左边的变量
x-=3+a等价于x=x-(3+a)
6~7
双精度(double): 8B 10-308 ~ 10308 15~16
长双精度: 16B 10-4931 ~ 104932 18~19
C语言程序设计项目式教程完整版课件全书电子教案教材课件完整
例如,有一函数
,编写程序,其功能是对已知 x 求 y
程序说明 ① if 和 else 后面的语句可以是复合语句。 ②注意 if 与 else 的配对原则,else 总是与前面离它最近的没成对的 if 成对。
简单的C语言程序结构
说明4——语句
C语言中以“;”作为语句结束的标志。函数体就是由若干语句组成的,同时语句也出现在 函数之间,示例代码如下所示:
简单的C语言程序结构
学习一种编程语言,最佳途径就是多阅读代码段,多编写程序代码,接下来通过最基本的 C语言程序的基本构成学习基本格式和书写规范,代码示例如下所示:
单一if结构
选择结构中最基本的分支结构是 if 语句,按形式分 if 语句可以分为单分支、双分支和多 分支等,单一 if 语句定义形式如下所示
当上述中“表达式”值为“逻辑真”时,执行“语句”中内容。例如计算整型变量 x 的 绝对值,示例代码如下所示:
If-else结构
if 语句的第二种形式为 if-else 结构的双分支。其定义形式如下所示 : 当“表达式”值为“逻辑真”时,执行“语句 1”;当“表达式”值为“逻辑假”时,执 行“语句 2”。例如,判断整型变量 x 是 5,则输出“right”,否则输出“error”,示例代码如 下所示:
简单的C语言程序结构
说明2——预处理
include称为文件包含命令,其意义是把双引号""或尖括号<>内指定的文件包含到本程序来, 成为本程序的一部分。被包含的文件通常是由系统提供的,其扩展名为.h的头文件。C语言的 头文件中包括了各个标准库函数的函数原型。因此,凡是在程序中调用一个库函数时,都必 须包含该函数原型所在的头文,示例代码如下所示:
原型在头文件 “stdio.h”中。具体格式如下:
C语言详细教程(完整版)ppt课件
C语言有很多种,如:Microsoft C、Turbo C、
Quick C、Borland C++、Visual C等。本课程通
.
过Turbo C的环境来学习C语言。
C Programming Language
三、C程序格式和结构特点
例1.1 第一个程序 Hello,World!
/* example1.1 The first C Program*/
– 答疑时间:星期四 12:00~13:30 – 地点:鉴主-12楼-计算机技术研究所 – 第6周到第18周
考试
. C Programming Language
上机安排
地点:南湖计算中心机房
时间:待定 上机内容:随教学进度根据配套的实验书( 上机调试每次课堂作业) 要求:
• 所有作业必须独立完成
• 作业必须经上机调试通过
. C Programming Language
开始
N=0
N<10吗?
Y
输入 X
X>=0吗? N N=N+1
N
结束
Y 输出 X
[例1.4] 输入10个数,求它们的平均值。
N=0, SUM=0 当N<10 输入X SUM=SUM+X N=N+1 AVER=SUM/10 输出AVER的值
. C Programming Language
定点法
数制转换
数值数据:二进制
浮点法
数据
西文:ASCII
非数值数据:编码 汉字:国标码
. C Programming Language
图形:……
有符定点整数
ds dn dn-1 dn-2 ……..
C语言程序设计教程ppt课件(2024)
打印九九乘法表
使用嵌套的for循环打印九九乘法表。
23
04
数组与字符串处理
2024/1/30
24
一维数组定义和操作
2024/1/30
01
一维数组定义
类型说明符 数组名
[常量表达式];
02
一维数组初始化
在定义数组时对数 组元素赋以初值;
04
一维数组操作
包括赋值、输入输
03
出、排序、查找等
。
一维数组引用
do-while循环
与while循环类似,但至少会执行一次 循环体。
示例
int i = 0; do { printf("%d ", i); i; } while (i < 10);
语法
do { // code to be executed } while (condition);
2024/1/30
19
赋值运算符
包括赋值运算符(=)和复合赋 值运算符(+=、-=、*=、/=、 %=),用于为变量赋值或进行 运算后赋值。
12
类型转换与运算顺序
2024/1/30
类型转换
当不同类型的数据进行运算时,需要进行类型转换,包括自 动类型转换和强制类型转换。自动类型转换由编译器自动完 成,而强制类型转换需要使用类型转换运算符。
0。
free函数
用于释放已分配的内存空间 ,避免内存泄漏。
2024/1/30
36
指针在数组、字符串等数据结构中应用
指针与数组
数组名本质上是一个指向数组首元素的指针;通过指针可 以访问和修改数组元素。
指针与字符串
字符串在C语言中以字符数组的形式存储,指针可以方便 地操作字符串。
使用嵌套的for循环打印九九乘法表。
23
04
数组与字符串处理
2024/1/30
24
一维数组定义和操作
2024/1/30
01
一维数组定义
类型说明符 数组名
[常量表达式];
02
一维数组初始化
在定义数组时对数 组元素赋以初值;
04
一维数组操作
包括赋值、输入输
03
出、排序、查找等
。
一维数组引用
do-while循环
与while循环类似,但至少会执行一次 循环体。
示例
int i = 0; do { printf("%d ", i); i; } while (i < 10);
语法
do { // code to be executed } while (condition);
2024/1/30
19
赋值运算符
包括赋值运算符(=)和复合赋 值运算符(+=、-=、*=、/=、 %=),用于为变量赋值或进行 运算后赋值。
12
类型转换与运算顺序
2024/1/30
类型转换
当不同类型的数据进行运算时,需要进行类型转换,包括自 动类型转换和强制类型转换。自动类型转换由编译器自动完 成,而强制类型转换需要使用类型转换运算符。
0。
free函数
用于释放已分配的内存空间 ,避免内存泄漏。
2024/1/30
36
指针在数组、字符串等数据结构中应用
指针与数组
数组名本质上是一个指向数组首元素的指针;通过指针可 以访问和修改数组元素。
指针与字符串
字符串在C语言中以字符数组的形式存储,指针可以方便 地操作字符串。
2024年度C语言程序设计教程教学课件完整版电子教案
C语言的历史与发展
学习C语言的意义
介绍C语言的起源、发展以及在计算 机科学领域的重要地位。
说明学习C语言对于理解计算机底层 原理、提高编程能力、拓展职业发展 空间等方面的重要性。
C语言的应用领域
阐述C语言在系统软件、应用软件、 嵌入式系统、游戏开发等领域的应用 。
2024/3/23
4
教学目标与要求
2024/3/23
参考资料
《C Primer Plus》第六版 ,Stephen Prata著,人 民邮电出版社。
在线资源
推荐一些优质的C语言学 习网站、在线课程和视频 教程,如慕课网、网易云 课堂等。
6
02 C语言基础知识
2024/3/23
7
C语言概述
2024/3/23
C语言的历史与发展
01
介绍C语言的起源、发展和应用领域。
2024/3/23
03
文件读写与定位
演示如何在C语言中进行文件的读写操作,包括字符读写、字符串读写
和格式化读写等,同时介绍文件定位函数(如fseek、ftell和rewind)
的使用。
25
数据排序与查找算法实现
2024/3/23
排序算法
介绍常见的排序算法(如冒泡排序、选择排序、插入排序和快速排序等),分析它们的时 间复杂度和空间复杂度,并提供C语言实现代码。
实现线性表的示例代码。
A 数据结构概述
简要介绍数据结构的基本概念,包 括数据的逻辑结构、存储结构和运
算三个方面。
B
C
D
树与图
简要介绍树和图的概念、特点和基本术语 ,为后续章节深入学习树和图数据结构打 下基础。
栈与队列
分别介绍栈和队列的特点、基本操作和应 用场景,提供C语言实现栈和队列的代码 示例。
C语言程序设计教程(第5版)王秀鸾全册PPT课件
ANSI 标准
2. C语言的特点
(1)语言简洁、紧凑,使用方便、灵活。 (2)支持结构化程序设计 。 (3)运算符丰富。 (4)数据类型丰富。 (5)较强的编译预处理功能。 (6)C语言的可移植性好。 (7)C语言本身既有一般高级语言的优点,又有低级 (汇编)语言的特点 。 (8)语法限制不太严格,程序设计自由度大。
printf(“sum is %d \n”,sum ); /* 输出sum的值 */
}
程序的运行结果为:
sum is 8
【例1.5】求两个整数中的较小者
#include “stdio.h”
main( )
/* 主函数 */
{ int x,y,m;
/* 定义变量 */
int fun(int a,int b);
1.1 程序设计的基本概念
1.1.2程序设计的一般过程
① 分析、理解问题 ② 解决方案(大致的思路),建立数学模型 ③ 求解步骤和流程(算法)(文字、符号等的描述) ④ 使用程序设计语言编写源程序 ⑤ 运行调试程序 ⑥ 整理输出结果,写出相关文档
分析 问题
确定处 理方案
确定操 作步骤
编写 程序
图1.1 程序设计的一般过程
1.2.2 初识C语言程序
(1) C程序的构成 【例1.4】求两个整数m与n的和。
#include “stdio.h”
main( )
/* 主函数 */
{int m,n,sum;/* 定义变量m,n, sum*/
m=5; n=3; /* 给变量m,n赋值 */
sum=m+n; /* 求m+n的值,并赋给变量sum */
上机运 行程序
整理 结果
《C语言程序设计》PPT课件
②库函数与文件包含命令include #include <stdio.h>
库函数:系统提供的标准函数,程序可直接使用;
使用库函数必须将其有关说明信息写入程序。为 了用户方便,系统定义库函数时,把一类相关库 函数的说明信息,分别写在一些文件中。本例中 使用了库函数printf ,其有关说明信息写在文件 stdio.h中。所以在程序的开始加入了#include <stdio.h>
对硬件进行操作。 • 生成目标代码质量高,程序执行效率高。 • C语言编写的程序可移植性好。
1.2 简单的C语言程序介绍
• /*ex101.c-在屏幕上输出This is a C program. */
• #include <stdio.h>
• void main( )
•{
•
printf(“This is a C program.\n”);
• 对于C语言程序来说,这一过程一般分为4步: 第1步:编辑源程序; 第2步:编译; 第3步:链接; 第4步:执行;
(整个过程如下图)
编辑器
编译器
链接器
(excute/run) (link)
(compile) edit
( 编 filename.c预
处
)辑
理
编
filename.o bj
译
出错
库函数和 其他目标模
•
第6章~第11章为第三部分,讲述了模块化程序设计的
概念和实现的方法,为程序设计提供了更多、更方便的途径,
为进行综合程序设计奠定了基础。每一个章节里都有详细的程
序范例来说明程序的设计思想、语句的概念、作用、含义和使
用方法,使学生能够由浅入深系统地学习c语言的知识,同时掌
C语言程序设计ppt课件
发展
随着计算机技术的不断发展,C语言也在不断演进,出现了C89、C99、C11等版本,增加了许多新特性和功能。
C语言的历史与发展
C语言是一种编译型语言,代码执行效率高,适合开发对性能要求较高的应用。
高效性
C语言提供了丰富的数据类型和运算符,支持结构化编程和模块化设计,方便程序员灵活应对各种复杂问题。
用于进行基本的数学运算,如加(+)、减(-)、乘(*)、除(/)等。
算术运算符
关系运算符
逻辑运算符
表达式
用于比较两个值的大小关系,如等于(==)、不等于(!=)、大于(>)、小于(<)等。
用于组合多个条件,如逻辑与(&&)、逻辑或(||)等。
由运算符和操作数组成的式子,如`a + b`、`x > y`等。
函数的返回值
03
函数可以返回一个值给调用者,通过`return`语句实现。返回值的类型应与函数定义时的返回类型一致。
函数的定义与调用
将实参的值复制给形参,形参的改变不会影响实参。这是C语言默认的参数传递方式。
值传递
通过指针传递实参的地址给形参,形参可以通过指针间接访问和修改实参的值。这种方式可以实现数据的双向传递。
rowSize:数组的行数。
colSize:数组的列数。
二维数组的访问:通过行下标和列下标访问数组元素,下标从0开始。
二维数组的应用:用于存储表格数据、矩阵运算等。
二维数组的初始化:可以在定义时直接初始化,也可以在定义后逐个赋值。
字符串的处理函数
C语言提供了一系列字符串处理函数,如strlen、strcpy、strcat、strcmp等,用于实现字符串的长度计算、复制、连接、比较等操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Input the second integer number:9←┘
max=9
[程序演示]
[案例1.3] 改写[案例1.2],交换main()函数和max()函数的前后位置。 源程序略。 程序运行情况:
Input the first integer number:6←┘ Input the second integer number:9←┘ max=9
1.函数是C语言程序的基本单位。 main()函数的作用,相当于其它高级语言中的主程序;其它函数 的作用,相当于子程序。 2.C语言程序总是从main()函数开始执行。 一个C语言程序,总是从main()函数开始执行,而不论其在程序 中的位置。当主函数执行完毕时,亦即程序执行完毕。 习惯上,将主函数main()放在最前头。
所以学习C语言,不仅要学习这9条控制语句和各种 运算符,而且要学习并掌握常用标准库函数的使用。
[Return]
1.2 C语言程序的结构与书写规则
1.2.1 C语言程序的总体结构
一个完整的C语言程序,是由一个main()函
数(又称主函数)和若干个其它函数结合而成的, 或仅由一个main()函数构成。
图1-1 函数说明部分结构图
注意:在旧标准中,函数可以缺省参数表。
3.函数体 在函数说明部分的下面、大括号(必须配对使用)内的部分。
函数体一般由说明语句和可执行语句两部分构成:
(1)说明语句部分 说明语句部分由变量定义、自定义类型定义、自定义函数说明、 外部变量说明等组成。
(2)可执行语句
一般由若干条可执行语句构成。图1-2是[案例1.2]的main()函数体的示意 图。
| ──多(含2)中选1
2.函数说明
由函数类型(可缺省)、函数名和函数参数表三部分组成,其 中函数参数表的格式为:
数据类型 形参[, 数据类型 形参2……]
例如,[案例1.2]中的函数max(),其函数说明各部分如图1-1所示。
函数类型 函数名 函数参数表
↓
↓
↓
int
max ( int x , int y )
/*案例代码文件名:AL1_2.C*/
/*功能:由main()函数和1个其它函数max()构成的C语言程序示例*/
int max(int x, int y)
{ return( x>y ? x : y ); }
main()
{ int num1,num2;
printf(“Input the first integer number: ”);
本书以ANSI C新标准来介绍。
(3)目前,在微机上广泛使用的C语言编译系统有 Microsoft C、Turbo C 、Borland C等。虽然它们的基本部分 都是相同的,但还是有一些差异, 所以请大家注意自己所 使用的C编译系统的特点和规定(参阅相应的手册)。
本书选定的上机环境是TC V2.0(DOS操作系统)。
/*主函数main()*/
main()
{ int num1,num2;
变量定义部分
printf(“Input the first integer number: ”);
scanf(“%d”, &num1);
printf(“Input the second integer number: ”); 可执行语句部分 函数体
1.2.2 函数的一般结构
任何函数(包括主函数main())都是由函数说明和函数体两部 分组成。其一般结构如下:
[函数类型] 函数名(函数参数表)
函数说明部分
{ 说明语句部分;
执行语句部分;
函数体部分
}
1. 使用的语法符号约定
[...]──方括号表示可选(即可以指定,也可以缺省)
……──省略号表示前面的Βιβλιοθήκη 可以重复第1章 C语言概述
本章主要介绍C语言程序的结构和书写规则, 以及Turbo C V2.0的基本操作。
1.1 C语言的发展简史和特点 1.2 C语言程序的结构与书写规则 1.3 C语言的语句和关键字 1.4 Turbo C V2.0的基本操作
[Return]
1.1 C语言的发展简史和特点
1.C语言的诞生与发展 (1)在C语言诞生以前,系统软件主要是用汇编语言 编写的。由于汇编语言程序依赖于计算机硬件,其可读 性和可移植性都很差;但一般的高级语言又难以实现对 计算机硬件的直接操作(这正是汇编语言的优势),于 是人们盼望有一种兼有汇编语言和高级语言特性的新语 言。 (2)C语言是贝尔实验室于70年代初研制出来的, 后来又被多次改进,并出现了多种版本。80年代初,美 国国家标准化协会(ANSI),根据C语言问世以来各种 版本对C语言的发展和扩充,制定了ANSI C标准(1989年 再次做了修订)。
2.C语言的特点 C语言同时具有汇编语言和高级语言的优势。 (1)语言简洁、紧凑,使用方便、灵活。 (2)运算符极其丰富。 (3)生成的目标代码质量高,程序执行效率高。 (4)可移植性好(较之汇编语言)。 (5)可以直接操纵硬件。
3. 在C语言中,除实现顺序、选择和循环三种基本
结构等的9条控制语句外,输入输出操作均由标准库函数 (不是C语言的组成部分)来实现。
[案例1.1] 仅由main()函数构成的C语言程序。
/*案例代码文件名:AL1_1.C*/
/*功能:仅由main()函数构成的C语言程序示例*/
main()
{ printf(“This is a C program.\n”);
}
程序运行结果:
This is a C program.
[程序演示]
[案例1.2] 由main()函数和1个其它函数max()构成的C语言程序。
scanf(“%d”, &num2);
printf(“max=%d\n”, max(num1, num2));
}
图1-2 函数体结构示意图
4.说明
(1)函数体中的变量定义语句,必须在所有可执行语句之前。
scanf(“%d”, &num1);
printf(“Input the second integer number: ”);
scanf(“%d”, &num2);
printf(“max=%d\n”, max(num1, num2));
}
程序运行情况:
Input the first integer number:6←┘