第 2章 C语言概述主要内容:
C语言的特点 ( 了解、自学 )
C语言程序的一般结构 ( 熟练掌握 )
C源程序的上机调试步骤 ( 熟练掌握 )
2.1 C语言的特点
1、语言简洁、紧凑
2、表达能力强
3、能直接访问物理地址
4、支持结构化程序设计
5、生成的目标代码质量高,程序执行效率高
6、可移植性好:可移植性指程序不加修改或稍加修改就可以从一种机器环境下移到另一种机器环境下运行
7、语法限制不严,程序设计自由度大
8、图形功能强
2.2 C源程序结构
例 2.1 在屏幕上输出一句话。
main() /*函数头 */
{ /* 函数体 */
printf(“How are you?\n”);
}
运行结果:
How are you?
说明:该程序只包含一个函数(函数名为 main),函数体内只有一个语句。
例 2,2 已知圆的半径为 6,计算圆的周长和面积。
main()
{ /*说明三个实型变量,分别表示半径、周长和面积
*/
float r,length,area;
r=6; /*赋值:将 6送给 r*/
length=2*3.14*r; /*计算周长,结果送 length*/
area=3.14*r*r; /*计算面积,结果送给 area*/
/*输出周长、面积 */
printf("\n length=%f,area=%f\n",length,area);
}
说明:
*该程序只由一个 main函数组成。
*main函数的函数体中可包含多个语句。
*根据语句的功能,该语句分为两类:
说明语句和可执行语句。
*注释,/* …… */
例 2.3 求 1+2+3+4+……+n,(其中 n由用户输入)。
main()
{ int n,s;
printf(,enter n:”); scanf(“%d”,&n); /*输入整数 n*/
s=sum(n); /*函数调用 */
printf(“\n the result is,%d”,s ); /*输出结果 */
}
int sum( int m) /*函数定义 */
{ int j,s1=0;
for(j=1;j<=m;j++) /*求和 */
s1+=j;
return(s1); } /*返回和值 */
C源程序的一般结构小结:
一个完整的 C语言程序一般包含以下 4部分:
(1)编译预处理命令
(2)全局变量及函数说明
(3)main()函数
(4)用户自定义函数关于 C源程序结构的说明
1.程序的基本组成单位是函数一个程序可以由一个或多个函数组成。
函数有两类:库函数和用户自定义函数。
库函数是系统提供的,用户可直接调用,如求正弦的函数 sin(),开平方函数 sqrt()等。对于库函数中没有的功能,需要用户自己编程实现,即自己定义函数。
自定义函数的数目由程序的复杂程度决定。
2,main函数因为 C程序总是从 main函数开始执行,所以一个
C语言源程序中只能 有且仅有一个 main函数。
该函数在程序中的位置任意:
可以在用户自定义的函数前面,也可以在后面,
也可以在各个函数之间。
3,函数的一般结构
C语言的函数由函数头和函数体两部分组成:
函数类型 函数名(形参表) 函数头
{
说明部分可执行部分 函数体
}
其中,函数中必须的部分是,函数名() { }
其中,第一行为函数头,大括号内为函数体,参数根据实际情况可以没有,但括号不能省略。如:
void line()
{ printf(“-------------------”);}
特别提示,函数体中,说明语句必须在所有可执行语句之前
4.语句根据语句的复杂程度,可将 C语言中的语句分为简单语句和复合语句 两大类。
简单语句,一般表示一个基本操作,以分号结束。
(其中 分号 是该语句的必要组成部分)
复合语句,用花括号 { }括起来的一系列语句,该语句以,{”开始,以,}”结束,末尾不需加分号。
5.源程序的书写格式
①书写(或输入)源程序时,可以一行写一个语句,
也可以一行写多个语句,还可以一个语句分几行写。
因为各语句之间是以 分号 或 花括号 间隔的。
通常,一行写一个语句,以保证程序结构清晰。
② C语言中用“大括号对”即,{ }”来表示程序的层次结构
6.注释程序中用 /*……*/ 给出注释,注释中可以是任意的内容。
位置,原则上,注释可以出现在程序中 允许出现空格的位置 ;实际编程时,一般放在函数之前或语句之后。
作用:编译时注释被忽略,因此注释对程序的运行结果不起作用。使用注释的目的是提高程序的可读性
7,C语言中,大小写字符不通用,如 a和 A表示两个不同的符号。
编程时,一般用小写字母,具有特殊意义的符号用大写,以示区别。
注意培养良好的编程风格,如加注释、大括号的对齐、适当的右缩等(参见 P17例 2.5)
2,3 C源程序的上机调试步骤以 Turbo C 2.0 环境为例,上机调试包括:编辑、编译、连接、
运行 4步
1,编辑,包括源程序的输入、修改、存盘。
文件后缀为 ",c"
所用命令,File /New(新建),Save(存盘),Load(打开),
EDIT(编辑)
2,编译,翻译成二进制并进行语法检查,若有错,则回到编辑状态继续修改。 文件后缀 ",obj"
所用命令,Compile/Compile to OBJ
3,连接,目标程序模块连接,生成可执行文件,文件后缀为
",exe",所用命令,Compile/Link。
其中 2和 3可以合为一步 Compile/Make EXE file
4,运行,RUN/RUN,查看结果,RUN/User screen
说明:
举例讲解:输入一源程序,演示上述过程的各个调试步骤。
将源程序改为错误的程序,演示调试、
排错的过程。
作业
1.课后上机练习题
2.习题 1,2
预习:
第三章 数据类型、运算符和表达式问题:
1,整型、实型、字符型变量所占内存空间的大小、表示数据的范围有何区别?
2.如何根据要处理的数据确定其类型?
3.为什么在处理数据之前要先确定其数据类型?
4,i++,++i有何区别?
C语言的特点 ( 了解、自学 )
C语言程序的一般结构 ( 熟练掌握 )
C源程序的上机调试步骤 ( 熟练掌握 )
2.1 C语言的特点
1、语言简洁、紧凑
2、表达能力强
3、能直接访问物理地址
4、支持结构化程序设计
5、生成的目标代码质量高,程序执行效率高
6、可移植性好:可移植性指程序不加修改或稍加修改就可以从一种机器环境下移到另一种机器环境下运行
7、语法限制不严,程序设计自由度大
8、图形功能强
2.2 C源程序结构
例 2.1 在屏幕上输出一句话。
main() /*函数头 */
{ /* 函数体 */
printf(“How are you?\n”);
}
运行结果:
How are you?
说明:该程序只包含一个函数(函数名为 main),函数体内只有一个语句。
例 2,2 已知圆的半径为 6,计算圆的周长和面积。
main()
{ /*说明三个实型变量,分别表示半径、周长和面积
*/
float r,length,area;
r=6; /*赋值:将 6送给 r*/
length=2*3.14*r; /*计算周长,结果送 length*/
area=3.14*r*r; /*计算面积,结果送给 area*/
/*输出周长、面积 */
printf("\n length=%f,area=%f\n",length,area);
}
说明:
*该程序只由一个 main函数组成。
*main函数的函数体中可包含多个语句。
*根据语句的功能,该语句分为两类:
说明语句和可执行语句。
*注释,/* …… */
例 2.3 求 1+2+3+4+……+n,(其中 n由用户输入)。
main()
{ int n,s;
printf(,enter n:”); scanf(“%d”,&n); /*输入整数 n*/
s=sum(n); /*函数调用 */
printf(“\n the result is,%d”,s ); /*输出结果 */
}
int sum( int m) /*函数定义 */
{ int j,s1=0;
for(j=1;j<=m;j++) /*求和 */
s1+=j;
return(s1); } /*返回和值 */
C源程序的一般结构小结:
一个完整的 C语言程序一般包含以下 4部分:
(1)编译预处理命令
(2)全局变量及函数说明
(3)main()函数
(4)用户自定义函数关于 C源程序结构的说明
1.程序的基本组成单位是函数一个程序可以由一个或多个函数组成。
函数有两类:库函数和用户自定义函数。
库函数是系统提供的,用户可直接调用,如求正弦的函数 sin(),开平方函数 sqrt()等。对于库函数中没有的功能,需要用户自己编程实现,即自己定义函数。
自定义函数的数目由程序的复杂程度决定。
2,main函数因为 C程序总是从 main函数开始执行,所以一个
C语言源程序中只能 有且仅有一个 main函数。
该函数在程序中的位置任意:
可以在用户自定义的函数前面,也可以在后面,
也可以在各个函数之间。
3,函数的一般结构
C语言的函数由函数头和函数体两部分组成:
函数类型 函数名(形参表) 函数头
{
说明部分可执行部分 函数体
}
其中,函数中必须的部分是,函数名() { }
其中,第一行为函数头,大括号内为函数体,参数根据实际情况可以没有,但括号不能省略。如:
void line()
{ printf(“-------------------”);}
特别提示,函数体中,说明语句必须在所有可执行语句之前
4.语句根据语句的复杂程度,可将 C语言中的语句分为简单语句和复合语句 两大类。
简单语句,一般表示一个基本操作,以分号结束。
(其中 分号 是该语句的必要组成部分)
复合语句,用花括号 { }括起来的一系列语句,该语句以,{”开始,以,}”结束,末尾不需加分号。
5.源程序的书写格式
①书写(或输入)源程序时,可以一行写一个语句,
也可以一行写多个语句,还可以一个语句分几行写。
因为各语句之间是以 分号 或 花括号 间隔的。
通常,一行写一个语句,以保证程序结构清晰。
② C语言中用“大括号对”即,{ }”来表示程序的层次结构
6.注释程序中用 /*……*/ 给出注释,注释中可以是任意的内容。
位置,原则上,注释可以出现在程序中 允许出现空格的位置 ;实际编程时,一般放在函数之前或语句之后。
作用:编译时注释被忽略,因此注释对程序的运行结果不起作用。使用注释的目的是提高程序的可读性
7,C语言中,大小写字符不通用,如 a和 A表示两个不同的符号。
编程时,一般用小写字母,具有特殊意义的符号用大写,以示区别。
注意培养良好的编程风格,如加注释、大括号的对齐、适当的右缩等(参见 P17例 2.5)
2,3 C源程序的上机调试步骤以 Turbo C 2.0 环境为例,上机调试包括:编辑、编译、连接、
运行 4步
1,编辑,包括源程序的输入、修改、存盘。
文件后缀为 ",c"
所用命令,File /New(新建),Save(存盘),Load(打开),
EDIT(编辑)
2,编译,翻译成二进制并进行语法检查,若有错,则回到编辑状态继续修改。 文件后缀 ",obj"
所用命令,Compile/Compile to OBJ
3,连接,目标程序模块连接,生成可执行文件,文件后缀为
",exe",所用命令,Compile/Link。
其中 2和 3可以合为一步 Compile/Make EXE file
4,运行,RUN/RUN,查看结果,RUN/User screen
说明:
举例讲解:输入一源程序,演示上述过程的各个调试步骤。
将源程序改为错误的程序,演示调试、
排错的过程。
作业
1.课后上机练习题
2.习题 1,2
预习:
第三章 数据类型、运算符和表达式问题:
1,整型、实型、字符型变量所占内存空间的大小、表示数据的范围有何区别?
2.如何根据要处理的数据确定其类型?
3.为什么在处理数据之前要先确定其数据类型?
4,i++,++i有何区别?