- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第一章C语言学习基础
第1章 开篇 ——C语言学习基础; ——目标既不是精确的,也不是预先设定的,目标应是一般性的、生成性的,从而鼓励创造性的、互动的转变。;Welcome to learn C programming* ;本课程学习要求 ;《C语言程序设计》课程是全校非计算机专业的理工科学生的公共必修课。
总学时数75,(含实验教学);
考试方法及要求
考试课程, 3个学分。
期末笔试考试+平时成绩+上机考试。
平时成绩由上课、组织纪律、作业、上机情况组成。;1、了解C语言的基本知识。
2、认识计算机辅助问题求解过程。
3、理解算法概念。
4、认识程序的三种基本结构。
5、应用C语言基本词汇描述简单问题。
6、了解数据及代码在内存中的存储与运行。
7、模仿例题编制自己的第一个程序。
8、初步学习使用VC++编译环境 ;本章项目任务;1.1* 预备知识:计算机系统的硬件与软件(自学);内存及内存空间编址;1.2 C语言简介;1.2.1 C语言的发展历史
1963年,剑桥大学将ALGOL 60语言发展成为CPL(Combined Programming Language)语言。1967年,剑桥大学的马丁·理查德(Matin Richards)对CPL语言进行了简化,于是产生了BCPL语言。1970年,UNIX的研制者丹尼斯·里奇(Dennis Ritchie)和肯·汤普森(Ken Thompson)在B语言的基础上发展和完善了C语言。C语言广泛应用于UNIX、MS-DOS、Microsoft Windows及Linux等不同的操作系统。在C语言基础上发展起来的有支持多种程序设计风格的C++语言、Java、JavaScript,微软的C#等。 ;1.2.2 C语言的特点
1、简洁紧凑、灵活方便
C语言有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
2、运算符丰富
3、数据结构丰富
4、C是结构化程序设计语言
5、C语法限制不太严格,程序设计自由度大
6、C语言允许直接访问物理地址,可以直接对硬件进行操作
7、C语言程序生成代码质量高,程序执行效率高
8、C语言适用范围大,可移植性好;1.3 工程问题求解方法论**;计算机求解问题的方法论
清晰陈述问题:当一个问题提出需要用软件实现时,明晰且精确的问题陈述可以避免产生任何误解。“陈述问题”是为了清楚“需求分析”。
准确需求分析:需求分析主要是确定软件程序需要实现的目标,确定软件处理的数据或信息,建立问题域数据结构,进行程序设计可行性分析。
数学建模或处理流程示例:为了准确理解并处理问题,有必要利用问题域的一个简单数据集手动模拟解答问题,从中找出问题解答的细节或过程。 ;
确定算法:进一步写出解决问题的详细可行算法步骤。
编码:编码是根据算法设计(或系统设计)的结果,用程序设计语言编程实现所定义的处理过程,最终实现软件系统的功能。
测试:问题求解的最后一步是测试结果是否正确。应该利用问题域数据集多次测试,确保答案也适用于其它有效数据集。;【例1-1】计算平面上两点间的距离。;3、数学建模或处理流程示例:
一步设点p1、p2的坐标为:p1=(1,5);p2=(4,7) ,则计算两点间距离就是一个直角三角形的斜边长。使用毕达哥拉斯定理计算距离:
distance=
从而该问题的数学模型为:
p1=(a,b);p2=(c,d);
distance=
;4、确定算法:本例算法用自然语言描述如下:
(1)给定两个点坐标,即给两个平面点坐标赋以具体值;
(2)计算由此两点构成的直角三角形的两直角边长度;
(3)根据两直角边长求斜边长;
(4)输出斜边长,即两点间的距离。
也可把3、4步骤称为“系统设计”。;5、编码:用C语言编写的程序代码如下:
/*program ch1-1.c */ /*注释*/
#include stdio.h /*头文件包含*/
#include math.h /*头文件包含*/
void main(void) /*主函数,函数首部*/
{ double x1=1,y1=5,x2=4,y2=7,side1,side2,distance;
/*定义两点和边*/
side1=x2-x1;
side2=y2-y1; /*计算两直角边长*/
distance=sqrt(side1*side1+side2*side2);
文档评论(0)