1、C语言程序设计,2019/6/24,2,C语言程序设计,教学要求 掌握程序设计语言的基本知识 常用算法 初步的程序设计能力 学习方法 自主学习 重视上机实践,2019/6/24,3,如何尽快学会用C语言进行程序设计,了解程序设计语言(C语言) 阅读程序 模仿、改写、编写程序通过不断的编程实践,逐步领会和掌握程序设计的基本思想和方法。,2019/6/24,4,教材、参考书与课时安排,教材和实验教材C语言程序设计 陈刚 清华大学出版社C语言程序设计实践教程 王琳艳 清华大学出版社参考书C程序设计 谭浩强主编 清华大学出版社C语言程序设计 何钦铭,颜晖主编 高等教育出版社,2008课时安排 授课 :
2、40学时 上机 :24学时,第1章 C语言基础知识,2019/6/24,6,本章主要内容,程序设计与算法概述 C语言的特点 VC+6.0集成开发环境 C程序的执行,2019/6/24,7,计算机语言与程序设计,1. 计算机语言(程序设计语言) 是人与计算机进行交流的工具。 计算机语言分为:,2019/6/24,8,例如:,0 0 1 0 0 0 1 1 1 1 1 0 1 1 0 1 0 1 1 0 0 0 0 1 0 1 1 1 0 1 1 0,机器语言程序,源程序需要 翻译,2019/6/24,9,汇编源程序的翻译:,将汇编源程序翻译为目标程序的过程称为汇编 汇编过程:,2019/6/24
3、,10,高级语言的翻译:,编译方法,解释方法,2019/6/24,11,2程序设计,用计算机解决一个实际应用问题时的整个处理过程称为程序设计 。,程序算法数据结构,2019/6/24,12,算 法,什么是算法 为解决某一应用问题而采用的解题步骤 算法的特点 有穷性 确定性 有效性 有0或多个输入 有一个或多个输出,2019/6/24,13,算法的描述方式 用自然语言描述算法 用流程图描述算法 用N-S结构图描述算法,例如:输出两个数中的最大数 。,算 法,2019/6/24,14,用自然语言描述算法,第一步:输入x和y的值; 第二步:比较x和y的值,如果x大于y,则输出x的值,否则输出y的值。
4、,易于理解,但冗长,不够精确,难于描述复杂算法。,例如当描述“输出10个数中最大数”的算法时,会冗长、难于理解,2019/6/24,15,图1.5 用流程图描述算法,用流程图描述算法,起止框,输入/输出框,判断框,处理框,流程线,2019/6/24,16,用N-S结构图描述算法,图1.7 用N-S结构图描述的算法,已经证明,任何复杂的问题都可以三种基本算法结构来描述:顺序、选择、循环。因此用计算机语句描述的程序也包含三种基本结构。,2019/6/24,17,1.1.3 结构化程序设计,程序的三种基本结构 顺序结构程序:按照书写顺序依次执行语句 选择结构程序:按照条件判断选择执行语句 循环结构程
5、序:通过条件控制循环执行语句,三种基本结构的共同点: 都是只有一个入口和一个出口; 结构内的每一个框都有机会被执行; 结构内没有死循环。,2019/6/24,18,程序的三种基本结构,顺序结构,# include main ( ) / *求两数之和*/ int a,b,sum;a=123;b=456;sum=a+b; printf(“sum is %dn“,sum); ,2019/6/24,19,程序的三种基本结构,选择结构,int max(int x , int y) int z;if (xy) z=x;else z=y;return (z); ,N,Y,2019/6/24,20,循环结构_
6、直到型循环结构,# include main ( ) int a=0,sum=0;dosum=sum+a;a+; while (a100);printf(“sum is %dn“,sum); ,N,Y,2019/6/24,21,循环结构_当循环,# include main ( ) int a=0,sum=0;while (a100)sum=sum+a;a+; printf(“sum is %dn“,sum); ,N,2019/6/24,22,C语言的特点,语言简洁,表达能力强,易于理解 只有32个关键字,9种控制语句 数据构造能力强 运算符丰富 程序书写格式自由结构化,模块化 三种基本结构、
7、函数 可直接访问物理地址,实现对硬件和低层系统软件的访问 语言生成的代码质量高 可移植性好,增加学习难度,2019/6/24,23,1.2.3 C程序的基本结构,【例1.1】计算并输出一个数a的平方。 #include main( ) float a,b;a=5.2;b=a*a;printf(“b=%fn“,b); ,执行程序的输出结果为:b=27.039997,2019/6/24,24,1.2 C程序的基本结构,【例1.2】输入两个数,输出其中的大数。,int max(int x, int y) /* max函数 */ int z ;if (xy) z = x; else z = y;ret
8、urn(z); main( ) /* 主函数 */ int a,b,c;scanf(“%d, %d“, ,2019/6/24,25,C程序结构,C程序 由函数构成 必须有,且只能有一个main(主函数) 总是从main函数开始执行 函数 由函数首部和函数体组成 函数首部指定函数名、函数参数、类型 函数体从 开始,到 结束 函数内有语句,2019/6/24,26,C程序结构(续),语句 包括说明性语句、可执行语句 以 ;表示语句结束 注释 可以出现在程序的任何位置 用 /* 和 */ 括起来,一般成对出现;也可用/开头,表示一注释行 书写格式 C语言没有行的概念,书写格式自由 习惯小写字母,大小
9、写敏感,采用缩进格式。,2019/6/24,27,1.2.4 C程序的执行过程,1源程序文件的建立和编辑 编写源程序,形成 .c文件 需用编辑工具:VC编译器、记事本 2编译 编译源程序,形成目标程序 . obj文件 需用编译工具 3连接 连接OBJ文件和调用的库函数,形成运行程序 .exe 文件 需用连接工具 4运行 .exe 文件,VC+6.0提供 集成化开发环境,2019/6/24,28,Visual C+ 6.0 主菜单画面:,2019/6/24,29,VC+6.0的基本操作方法演示,2019/6/24,30,启动程序,2019/6/24,31,进入界面,2019/6/24,32,单击File New,2019/6/24,33,在New对话框中,选择Files选项卡,eg1.c,2019/6/24,34,进入编辑窗口,2019/6/24,35,编辑源程序,2019/6/24,36,几个常用工具按钮,2019/6/24,37,当Compile或Build时,弹出对话框,2019/6/24,38,编译、连接的信息提示,2019/6/24,39,运行(Ctrl+F5),2019/6/24,40,本章结束,