1、第1 章 C语言程序设计基础 主要内容 1.课程概述2.为什么选择C语言作为入门课程?3.C语言的产生与发展4.如何学习C语言?5.编写第一个C程序,并编译运行6.C程序的结构7.C 程序的上机环境和上机步骤。8.程序和算法概念 课程概述 课程性质:专业基础课;5学分、90课时;后续有面向对象程序设计、数据结构等课程 课程目标:掌握C语言的语法和程序结构 ,掌握基本的程序设计方法;能用C 语言进行程序设计,并为今后的学习打好基础。为什么选择C语言作为程序设计的入门语言?C语言功能强大、表达能力强;生成的目标程序效率高,可移植性好;是一门跨平台的语言,既具有高级语言的特性,又具有低级语言的优点,
2、应用广泛;以3种基本结构为主体,是后续课程的基础目前在很多企业中被广泛应用C 语言的产生与发展1972年美国贝尔实验室 Dennis Ritchie和Brain Kernighan 首先推出1983年美国贝尔实验室Dennis Ritchie和Brain Kernighan改进推出(The C Programing Language)1983年美国国家标准协会ANSI,制定标准C (ANSI C)20世纪80年代中期美国贝尔实验室B.Stroustrup博士C+微软 MS C+Visual C+, Borland Turbo C+C+ Builder面向过程面向对象学习方法(1)多思多练多问多
3、思多练多问(2 )认真听课做好笔记,独立完成作业和实训项目。(3)课程学习资源教材:C语言程序设计 乌云高娃等编著,高等教育出版社 参考书: C语言程序设计张强华、吕新平编著,人民邮电出版社 C程序设计谭浩强著,清华大学出版社教学网站http:/ 程序是什么? 程序程序设计语言+数据结构算法数据数据 的组织形式的组织形式程序解决问题的程序解决问题的方法与步骤方法与步骤第一任务任务 编写第一个C语言程序:向屏幕上输出“hello,world!”。任务分析需要掌握如下知识点:C语言程序的基本结构如何输出字符串开发环境( WinTC )的使用第二个任务运行并分析问题1.2 的 程序代码,总结C语言程
4、序的结构和书写特点.任务分析需要掌握如下知识点:C语言的书写格式C语言程序的基本结构变量定义与赋值输出语句C语言程序的书写特点 预处理命令序列预处理命令序列 main()为主函数名。每个C程序都必须有一个main()函数,这是C程序执行的入口地址; 大括号“ ”是函数体界定符,位于大括号 中的内容称为函数体,每个函数都必须用一对大括号将函数体括起来; 输出语句printf(“Hello,world!”); ,其目的是将引号中的内容“Hello,world!”原样输出。printf 为C 语言的标准输出函数,是系统提供的库函数; 语句后面有一个分号“;”,这是C语言的语句结束符; 位于/*/之间
5、的内容是注释语句,用来帮助读者阅读程序,在程序编译运行时这些内容是不起作用的,注释语句可写在程序中的任何位置。 变量定义语句 int iMath,iEnglish; 变量赋值语句 iMath=80;C语言程序结构 C程序的一般形式如下:程序的一般形式如下: 预处理命令序列预处理命令序列 void main() 变量定义序列变量定义序列 执行语句序列执行语句序列 以上编译预处理、变量定义、以上编译预处理、变量定义、执行语句等三个序列可称为执行语句等三个序列可称为C C程程序结构上的三大区域,这三大区序结构上的三大区域,这三大区域在程序中的顺序是不可调换位域在程序中的顺序是不可调换位置的,程序也将
6、按这个顺序执行。置的,程序也将按这个顺序执行。何为算法? 算法就是解决问题的方法和步骤,它具有以下特点 1、有穷性,不能无限执行、有穷性,不能无限执行 2、确定性,不能二义性、确定性,不能二义性 3、有零个或多个输入、有零个或多个输入 4、由一个或多个输出、由一个或多个输出 5、可执行性,可以通过计算机实现算法描述、可执行性,可以通过计算机实现算法描述的操作的操作算法的表达方式 1、自然语言 2、伪代码 3、传统流程图 4、N/S流程图:去掉带箭头的流程线 5、计算机语言(程序) 算法表示举例 问题问题1.3 : 比较三个人的身高,将个子最高的一个人的身高输出到屏幕上。 问题分析:设fTall
7、1,fTall2,fTall3分别存放3个人的身高,fMax存放其最大值。为求最大值,要对3个数进行比较,解题步骤可按如下步骤去做: S1:输入3个人的身高数据fTall1,fTall2,fTall3; S2:先把第1个人的身高fTall1的值赋给fMax; S3:将第2个人的身高fTall2与fMax比较,如果fTall2fMax,则把第2人的身高数据fTall2的值赋给fMax,否则,不做任何事情。 S4:将第3个人的身高fTall3与fMax比较,如果fTall3fMax,则把第3个人的身高fTall3的值赋给fMax,否则,不做任何事情。 S5:输出fMax的值,即个子最高的人的身高数
8、据。算法设计!算法表示伪代码描述 INPUT ftall1,ftall2,ftall3ftall1fmaxIF ftall2fmax THEN ftall2fmaxIF ftall3fmax THEN ftall3maxPRINT fmax程序语言描述#include “stdio.h”void main() float ftall1,ftall2,ftall3,fmax;scanf(“%f%f%f”,&ftall1,&ftall2,&ftall3);fmax = ftall1;if(ftall2fmax) fmax = ftall2;if(ftall3fmax) fmax = ftall3;
9、printf(“%f”, fmax); 传统流程图N-S图程序代码分析 #include “stdio.h” /*编译预处理命令 */ void main() /*主函数 */ float ftall1,ftall2,ftall3,fmax;/*变量定义*/ scanf(“%f%f%f”,&ftall1,&ftall2,&ftall3);/*输入3个身高*/ fmax = ftall1;/*赋值*/ if(ftall2fmax) fmax = ftall2;/*判断语句*/ if(ftall3fmax) fmax = ftall3; ;/*判断语句*/ printf(“%f”, fmax); ;/*输出语句*/ 程序设计方法 程序设计就是针对给定问题进行设计、编写和调试计算机程序的过程。程序设计一般步骤如下: 分析问题,确定解题方案分析问题,确定解题方案 确定算法确定算法 编写程序编写程序 调试运行程序调试运行程序 建立文档资料建立文档资料小结什么是程序?什么是算法?算法如何表示?C语言程序的基本结构C程序的书写特点WINTC开发环境的使用输入语句输出语句 变量定义赋值语句