主讲:吴朝霞
Email:ysuwzx@263.net
教材、参考书与课时安排
教材
C程序设计 谭浩强编著 清华大学出版社
参考书
C语言程序设计教程 谭浩强 高等教育出版社
课时安排授课,32学时实验,12学时课程要求
课前请做好预习
保持课堂安静,头脑清醒,思维活跃
认真、独立、按时完成并提交作业
重视上机实践,有效利用宝贵的上机时间第一章 C语言概述
C语言发展历史
C语言特点简单的 c程序介绍
C程序上机步骤
1.1 C语言出现的历史背景
1.C语言的诞生与发展
( 1)在 C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接操作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性的新语言。
( 2)C语言是贝尔实验室于 70年代初研制出来的,后来又被多次改进,并出现了多种版本。 80年代初,美国国家标准化协会( ANSI),根据C语言问世以来各种版本对
C语言的发展和扩充,制定了 ANSI C标准( 1989年再次做了修订)。
本书以 ANSI C新标准来介绍。
( 3)目前,在微机上广泛使用的C语言编译系统有
Microsoft C,Turbo C,Borland C等。虽然它们的基本部分都是相同的,但还是有一些差异,所以请大家注意自己所使用的C编译系统的特点和规定(参阅相的手册)。
本书选定的上机环境是 TC V2.0( DOS操作系统) 。
§ 1.2 C语言特点
语言简洁、紧凑、灵活
运算符和数据类型丰富
程序设计结构化、模块化
生成目标代码质量高
可移植性好
< >
> > >
>>
中级语言
C语言程序设计 第一章 C语言概述
>
32个关键字,(由系统定义,不能重作其它定义 )
auto break case char const
continue default do double else
enum extern float for goto
if int long register return
short signed sizeof static struct
switch typedef unsigned union void
volatile while
<
C语言程序设计 第一章 C语言概述
9种控制语句,
if( )~else~
for( )~
while( )~
do~while( )
continue
break
switch
goto
return
<
C语言程序设计 第一章 C语言概述例 C语言与 Pascal语言比较
C语言 Pascal语言 含义
{ } BEGIN….END 复合语句
if(e) s; IF(e) THEN s 条件语句
int i ; VAR i:INTEGER 定义 i为整型变量
int a[10]; VAR a:ARRAY[1..10] OF INTEGER 定义整型数组 a
int f(); FUNCTION f():INTEGER 定义 f为返值整型的函数
int *p; VAR p:?INTEGER 定义 p为指向整型变量的指针
i+= 2; i=i+2 赋值 i+2?i
i++,++i; i=i+1 i自增值结论,C比 Pascal简练,源程序短 。
<
C语言程序设计 第一章 C语言概述
34种运算符:
算术运算符,+ - * / % ++ --
关系运算符,< <= == > >= !=
逻辑运算符:! && ||
位运算符,<< >> ~ | ^ &
赋值运算符,= 及其扩展条件运算符,?:
逗号运算符:,
指针运算符,* &
求字节数,sizeof
强制类型转换,(类型)
分量运算符,,->
下标运算符,[]
其它,( ) -
<
C语言程序设计 第一章 C语言概述
C
数据类型基本类型构造类型指针类型空类型 void
定义类型 typedef
数值类型字符类型 char
枚举类型 enum
整 型浮点型单精度型 float
双精度型 double
短整型 short
长整型 long
整型 int
数组结构体 struct
共用体 union
<
C语言程序设计 第一章 C语言概述
§ 1.3 简单的 C程序介绍例 1.1 第一个程序 Hello,World!
/* example1.1 The first C Program*/
#include <stdio.h>
main()
{
printf(“Hello,World!”);
}
C语言程序设计 第一章 C语言概述注释编译预处理函数语句输出:
Hello,World!
例 1.3 由 main( )函数和 1个其它函数 max()构成的C语言程序。
/main( ) /*主函数 */
{int a,b,c; /*声明部分,定义变量 */
scanf(“%d,%d”,&a,&b); /*输入变量 a和 b的值 */
c=max(a,b); /*调用 max函数,将得到的值赋给 c*/
printf(“max=%d”,c); /*输出 c的值 */
}
int max(int x,int y) /*定义 max 函数 */
{int z; /*定义变量 z*/
if(x>y) z=x;
else z=y;
return(z); /*将 z的值返回,通过 max带回调用 */
}
格式特点
习惯用 小写 字母,大小写敏感
不使用行号,无程序行 概念
可使用空行和空格
常用 锯齿形 书写格式
< >
C语言程序设计 第一章 C语言概述
main( )
{ ……………….
………………
…………..
…………..
………
……….
……………
…………….
……………….
………………..
}
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);
}
优秀程序员的素质之一,
使用 TAB缩进
{}对齐
有足够的注释
有合适的空行
结构特点
函数与主函数
程序由一个或多个函数组成
必须有且只能有一个主函数 main()
程序执行从 main开始,在 main中结束,其它函数通过嵌套调用得以执行。
程序语句
C程序由语句组成
用,;” 作为语句终止符
注释
/* */为注释,不能嵌套
不产生编译代码
< >
例,/*This is the main /* of example1.1*/ */
非法
编译预处理命令
C语言程序设计 第一章 C语言概述编辑链接编译执行
§ 1.4 C程序的上机步骤
C程序开发步骤
< >
开 始编 辑编 译连 接执 行有错?
结果正确?
结 束有源程序
f i l e,c
目标程序
f i l e,obj
库函数和其它目标程序可执行目标程序无正确不正确
file.exe
C语言程序设计 第一章 C语言概述程序代码的录入,
生成源程序 *.c
语法分析查错,翻译生成目标程序 *.obj
与其它目标程序或库链接装配,生成可执行程序 *.exe
′ 3ì Dò ±ê 3ì Dò?é?′ D 3ì Dò
ú èY 3ì Dò éè óú óú ó
é?′ D 2é ò? 2é òé ò?
t oó ×,c,o b j,e x e
进入 Turbo C
D:\TC>TC.exe?
主控菜单
文件操作 FILE,New Load Save Write to
编辑操作 EDIT:插入 /修改 块 查找 /替换
编译链接 COMPILE LINK MAKE
执行 RUN
退出 Turbo C
Alt +x
Alt+F,Q
帮助 Help
F1
Ctrl+F1
运行一个C语言程序的一般过程
T urbo C是一个集源程序编辑,编译,连接,运行与调试于一体,
用菜单驱动的集成软件环境 。
运行一个C语言程序的一般过程:
( 1) 启动 TC,进入 TC集成环境 。
( 2) 编辑 ( 或修改 ) 源程序 。
( 3) 编译 。 如果编译成功,则可进行下一步操作;否则,返回
( 2) 修改源程序,再重新编译,直至编译成功 。
( 4) 连接 。 如果连接成功,则可进行下一步操作;否则,根据系统的错误提示,进行相应修改,再重新连接,直至连接成功 。
( 5) 运行 。 通过观察程序运行结果,验证程序的正确性 。 如果出现逻辑错误,则必须返回 ( 2) 修改源程序,再重新编译,连接和运行,直至程序正确 。
( 6) 退出 TC集成环境,结束本次程序运行 。
进入 Turbo C 2.0集成开发环境中后,屏幕上显示,
小结:
一、函数是C语言程序的基本单位。 C语言程序总是从 main( )函数开始执行被调用的函数可以是系统提供的库函数,
也可以使用户根据需要自己编制设计的函数 。
C的函数相当于其他语言的子程序,用函数来实现特定的功能 。 main( )函数的作用,相当于其它高级语言中的主程序;其它函数的作用,
相当于子程序 。
一个C语言程序,总是从 main( )函数开始执行,而不论其在程序中的位置 。 当主函数执行完毕时,亦即程序执行完毕 。
习惯上,将主函数 main( )放在最前头 。
二,源程序书写格式
1.所有语句都必须以分号,;,结束,函数的最后一个语句也不例外 。
2.程序行的书写格式自由,既允许 1行内写几条语句,也允许 1条语句分写在几行上 。
3.允许使用注释。
C语言的注释格式为,/* …… */
Email:ysuwzx@263.net
教材、参考书与课时安排
教材
C程序设计 谭浩强编著 清华大学出版社
参考书
C语言程序设计教程 谭浩强 高等教育出版社
课时安排授课,32学时实验,12学时课程要求
课前请做好预习
保持课堂安静,头脑清醒,思维活跃
认真、独立、按时完成并提交作业
重视上机实践,有效利用宝贵的上机时间第一章 C语言概述
C语言发展历史
C语言特点简单的 c程序介绍
C程序上机步骤
1.1 C语言出现的历史背景
1.C语言的诞生与发展
( 1)在 C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接操作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性的新语言。
( 2)C语言是贝尔实验室于 70年代初研制出来的,后来又被多次改进,并出现了多种版本。 80年代初,美国国家标准化协会( ANSI),根据C语言问世以来各种版本对
C语言的发展和扩充,制定了 ANSI C标准( 1989年再次做了修订)。
本书以 ANSI C新标准来介绍。
( 3)目前,在微机上广泛使用的C语言编译系统有
Microsoft C,Turbo C,Borland C等。虽然它们的基本部分都是相同的,但还是有一些差异,所以请大家注意自己所使用的C编译系统的特点和规定(参阅相的手册)。
本书选定的上机环境是 TC V2.0( DOS操作系统) 。
§ 1.2 C语言特点
语言简洁、紧凑、灵活
运算符和数据类型丰富
程序设计结构化、模块化
生成目标代码质量高
可移植性好
< >
> > >
>>
中级语言
C语言程序设计 第一章 C语言概述
>
32个关键字,(由系统定义,不能重作其它定义 )
auto break case char const
continue default do double else
enum extern float for goto
if int long register return
short signed sizeof static struct
switch typedef unsigned union void
volatile while
<
C语言程序设计 第一章 C语言概述
9种控制语句,
if( )~else~
for( )~
while( )~
do~while( )
continue
break
switch
goto
return
<
C语言程序设计 第一章 C语言概述例 C语言与 Pascal语言比较
C语言 Pascal语言 含义
{ } BEGIN….END 复合语句
if(e) s; IF(e) THEN s 条件语句
int i ; VAR i:INTEGER 定义 i为整型变量
int a[10]; VAR a:ARRAY[1..10] OF INTEGER 定义整型数组 a
int f(); FUNCTION f():INTEGER 定义 f为返值整型的函数
int *p; VAR p:?INTEGER 定义 p为指向整型变量的指针
i+= 2; i=i+2 赋值 i+2?i
i++,++i; i=i+1 i自增值结论,C比 Pascal简练,源程序短 。
<
C语言程序设计 第一章 C语言概述
34种运算符:
算术运算符,+ - * / % ++ --
关系运算符,< <= == > >= !=
逻辑运算符:! && ||
位运算符,<< >> ~ | ^ &
赋值运算符,= 及其扩展条件运算符,?:
逗号运算符:,
指针运算符,* &
求字节数,sizeof
强制类型转换,(类型)
分量运算符,,->
下标运算符,[]
其它,( ) -
<
C语言程序设计 第一章 C语言概述
C
数据类型基本类型构造类型指针类型空类型 void
定义类型 typedef
数值类型字符类型 char
枚举类型 enum
整 型浮点型单精度型 float
双精度型 double
短整型 short
长整型 long
整型 int
数组结构体 struct
共用体 union
<
C语言程序设计 第一章 C语言概述
§ 1.3 简单的 C程序介绍例 1.1 第一个程序 Hello,World!
/* example1.1 The first C Program*/
#include <stdio.h>
main()
{
printf(“Hello,World!”);
}
C语言程序设计 第一章 C语言概述注释编译预处理函数语句输出:
Hello,World!
例 1.3 由 main( )函数和 1个其它函数 max()构成的C语言程序。
/main( ) /*主函数 */
{int a,b,c; /*声明部分,定义变量 */
scanf(“%d,%d”,&a,&b); /*输入变量 a和 b的值 */
c=max(a,b); /*调用 max函数,将得到的值赋给 c*/
printf(“max=%d”,c); /*输出 c的值 */
}
int max(int x,int y) /*定义 max 函数 */
{int z; /*定义变量 z*/
if(x>y) z=x;
else z=y;
return(z); /*将 z的值返回,通过 max带回调用 */
}
格式特点
习惯用 小写 字母,大小写敏感
不使用行号,无程序行 概念
可使用空行和空格
常用 锯齿形 书写格式
< >
C语言程序设计 第一章 C语言概述
main( )
{ ……………….
………………
…………..
…………..
………
……….
……………
…………….
……………….
………………..
}
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);
}
优秀程序员的素质之一,
使用 TAB缩进
{}对齐
有足够的注释
有合适的空行
结构特点
函数与主函数
程序由一个或多个函数组成
必须有且只能有一个主函数 main()
程序执行从 main开始,在 main中结束,其它函数通过嵌套调用得以执行。
程序语句
C程序由语句组成
用,;” 作为语句终止符
注释
/* */为注释,不能嵌套
不产生编译代码
< >
例,/*This is the main /* of example1.1*/ */
非法
编译预处理命令
C语言程序设计 第一章 C语言概述编辑链接编译执行
§ 1.4 C程序的上机步骤
C程序开发步骤
< >
开 始编 辑编 译连 接执 行有错?
结果正确?
结 束有源程序
f i l e,c
目标程序
f i l e,obj
库函数和其它目标程序可执行目标程序无正确不正确
file.exe
C语言程序设计 第一章 C语言概述程序代码的录入,
生成源程序 *.c
语法分析查错,翻译生成目标程序 *.obj
与其它目标程序或库链接装配,生成可执行程序 *.exe
′ 3ì Dò ±ê 3ì Dò?é?′ D 3ì Dò
ú èY 3ì Dò éè óú óú ó
é?′ D 2é ò? 2é òé ò?
t oó ×,c,o b j,e x e
进入 Turbo C
D:\TC>TC.exe?
主控菜单
文件操作 FILE,New Load Save Write to
编辑操作 EDIT:插入 /修改 块 查找 /替换
编译链接 COMPILE LINK MAKE
执行 RUN
退出 Turbo C
Alt +x
Alt+F,Q
帮助 Help
F1
Ctrl+F1
运行一个C语言程序的一般过程
T urbo C是一个集源程序编辑,编译,连接,运行与调试于一体,
用菜单驱动的集成软件环境 。
运行一个C语言程序的一般过程:
( 1) 启动 TC,进入 TC集成环境 。
( 2) 编辑 ( 或修改 ) 源程序 。
( 3) 编译 。 如果编译成功,则可进行下一步操作;否则,返回
( 2) 修改源程序,再重新编译,直至编译成功 。
( 4) 连接 。 如果连接成功,则可进行下一步操作;否则,根据系统的错误提示,进行相应修改,再重新连接,直至连接成功 。
( 5) 运行 。 通过观察程序运行结果,验证程序的正确性 。 如果出现逻辑错误,则必须返回 ( 2) 修改源程序,再重新编译,连接和运行,直至程序正确 。
( 6) 退出 TC集成环境,结束本次程序运行 。
进入 Turbo C 2.0集成开发环境中后,屏幕上显示,
小结:
一、函数是C语言程序的基本单位。 C语言程序总是从 main( )函数开始执行被调用的函数可以是系统提供的库函数,
也可以使用户根据需要自己编制设计的函数 。
C的函数相当于其他语言的子程序,用函数来实现特定的功能 。 main( )函数的作用,相当于其它高级语言中的主程序;其它函数的作用,
相当于子程序 。
一个C语言程序,总是从 main( )函数开始执行,而不论其在程序中的位置 。 当主函数执行完毕时,亦即程序执行完毕 。
习惯上,将主函数 main( )放在最前头 。
二,源程序书写格式
1.所有语句都必须以分号,;,结束,函数的最后一个语句也不例外 。
2.程序行的书写格式自由,既允许 1行内写几条语句,也允许 1条语句分写在几行上 。
3.允许使用注释。
C语言的注释格式为,/* …… */