版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
厦门理工学院高级语言程序设计教学课件
第1章C语言程序设计概述厦门理工学院计算机科学与技术系
2/6/2023教师:庄蔚蔚E-Mail:
zhuangweiwei@
学习要求及成绩构成成绩构成平时考勤:10%
实验成绩:20%
上机考试:35%(期中10%、期末25%
)期末考试:35%2教材、参考书与课时安排教材C语言程序设计
吴芸、翁伟厦门大学出版社参考C程序设计谭浩强清华大学出版社3什么是程序
程序一词来自生活,通常指完成某些事务的一种既定方式和过程在日常生活中,可以将程序看成对一系列动作的执行过程的描述前言4引入:智力题
100个硬币,其中99个真硬币,1个假硬币。真币和假币不一样重,如何使用天平判断出真币重还是假币重?5引入:智力题Setp1.
100枚硬币分A,B两堆,各50枚一堆。Setp2.
将A,B两堆放天平上称第一次,设结果是A堆重,B堆轻。Setp3.
将重的A堆分C,D两堆,各25枚一堆。Setp4.
将C,D两堆放天平上称第二次。Setp5.
如果C,D两堆一样重,说明假币不在重的A堆中,而
在轻的B堆中,说明假币轻。Setp6.
如果C,D两堆不一样重,说明假币在重的A堆中,说
明假币重。6银行带上存折去银行
3.将存折递给银行职员
2.到相应窗口排队4.银行职员办理取款事宜
日常生活中的程序5.签名拿到钱并离开银行
7什么是指令?做口述笔记……键入信函的内容……发送传真……口述2.信函_____________________________________________________3.传真指令被逐条执行程序员老板秘书程序:为了让计算机执行某些操作或解决某个问题而编写的一系列有序指令的集合要执行的一组指令程序计算机中的程序8本章概要1.1程序设计基础1.2C语言程序简介1.3编程环境及C程序执行过程1.4编码规范及编程习惯9程序设计语言:用于编写程序,实现人与计算机“对话”的语言。目前,人们使用的程序设计语言有上百种,常用的也有几十种,如BASIC、FORTRAN、PASCAL,以及C语言等。这些语言的表达形式接近于人的自然语言,都是高级程序设计语言(简称“高级语言”)。1.1程序设计基础程序设计语言按照书写形式和思维方式的不同,可分为低级语言和高级语言两大类。低级语言包括机器语言和汇编语言。机器语言:以二进制代码的形式来表示这些基本指令集合。它是计算机系统唯一能够直接识别和执行的程序设计语言。它的优点是运算速度快,每条指令均为由0和1组合起来的代码串,由操作码和操作对象两部分组成。1011100000000001000000000000010100000001000000001.1程序设计基础汇编语言:由一组汇编指令构成的语言,与机器语言相比,它可以用指令英文名称的缩写字符串来表示其所代表的操作,用标号和符号来代表地址、常量和变量。高级语言:高级程序设计语言(简称高级语言)是指用于描述计算机程序的类自然语言。它是程序设计发展的产物,它屏蔽了机器的细节,提高了语言的抽象层次。高级语言采用接近自然语言和数学语言的语句,易学、易用、易维护,并且在一定程度上与机器无关,给编程带来了极大的方便。MOVAX,1ADDAX,1#include<stdio.h>main(){ printf("%d\n",1+1);}1.1程序设计基础1.1程序设计基础程序设计=数据结构+算法算法
算法---解决问题的一种策略。算法的常见表示方法
---自然语言
---传统流程图
---N-S流程图
13算法例1-1用自然语言描述求三个数中最大数的算法。输入三个数num1、num2、num3之后,先求出三个数中两个数num1和num2的较大数max2,再把这个较大数max2与第三个数num3比较,求出最大数max3。
14流程图2例1-2用传统流程图描述求三个数中最大数的算法。
Start/EndSymbolSemanticProcessInput/OutputTestConnectorFlowofactivities15N-S流程图例1-3用N-S流程图描述求三个数中最大数的算法,如图1-4所示。16本章概要1.1
程序设计基础1.2C语言程序简介1.3编程环境及C程序执行过程1.4编码规范及编程习惯171.2C语言程序简介1C语言的产生和发展一切从一个叫“SpaceTravel”的电子游戏开始……为了让他的游戏能在PDP-7上运行,KenThompson用汇编语言给PDP-7写了一个操作系统——UNIX汇编太不好用了,Thompson需要高级语言试验了一些高级语言,包括Fortran,都不理想他在BCPL基础上,自己设计了一个B语言UNIX开始发展,B也不够用了DennisRitchie加入,把B改造成C开始用C重写UNIX1.2C语言程序简介
随着面向对象编程技术的出现,在进一步扩充和完善了C语言基础上,又出现了C++。Java,C++等面向对象语言(第四代语言)是C语言的发展。但是,C是C++的基础,C++语言和C语言在很多方面是兼容的。在掌握了C语言后,再进一步学习C++,就能以一种熟悉的语法来学习面向对象的语言,可达到事半功倍的目的。1.2C语言程序简介是一种高级语言高级语言并不是“高级”,只是相对低级语言,在一个高的级别上进行编程历史悠久,战勋卓著诞生于上世纪70年代初,成熟于80年代(C89),修订与90年代(C99)很多重量级软件都是用C写的上天入地,无所不能几乎没有不能用C写出来的软件,没有不支持C的系统很多流行语言、新生语言都借鉴了它的思想、语法从C++,到Java,再到C#,还有php等1.2C语言程序简介C程序的基本结构#include<stdio.h>voidmain(){printf("HelloWorld\n");}以#开始的语句称为预处理器指令#include语句不是必需的,但是,如果程序有该语句,就必须将它放在程序的开始处以.h为后缀的文件被称为头文件,可以是C程序中现成的标准库文件,也可以是自定义的库文件。stdio.h文件中包含了有关输入输出语句的函数
main()函数是C程序处理的起点。
main()函数可以返回一个值,也可以不返回值。如果某个函数没有返回值,那么在它的前面有一个关键字void22C程序的基本结构#include<stdio.h>voidmain(){printf("HelloWorld\n");}在函数定义的后面有一个左大括号,即{它表示函数的开始,后面是函数的主体大括号也可以用于将语句块括起来在函数定义的结尾处有一个右大括号,即}在屏幕上产生一行输出“Helloworld”,并换行(\n)
函数主体中的每个语句都以分号结束。C程序中的一个语句可以跨越多行,并且用分号通知编译器该语句已结束。
运行结果:HelloWorld23C程序中的注释#include<stdio.h>voidmain(){printf("HelloWorld\n");}//此程序用来打印HelloWorld单行注释C程序可以包含注释,以便向读者作一般说明编译器并不处理这些注释/*此程序由×××编写
用来打印输出“HelloWorld”*/多行注释24/**************************作者:创建日期:描述:……***************************/#include<头文件>voidmain(){……}注释在程序中添加注释是一个好的编程习惯,可以增强程序的可读性。/*”和“*/”必须成对使用,且“/”和“*”、以及“*”和“/”之间不能有空格,否则都出错25技巧:为避免遗漏必须配对使用的符号,例如注释符号、函数体的起止标识符(花括号)、圆括号等等,在输入时,可连续成对地输入这些起止标识符,然后再在其中进行插入来完成内容的编辑。在起止标识符嵌套时,以及相距较远时,这样做更有必要。26编制C语言程序的基本步骤
编辑程序代码的录入,生成源程序*.c编译语法分析查错,翻译生成目标程序*.obj链接与其它目标程序或库链接装配,生成可执行程序*.exe运行开始编辑编译有错?链接执行结果正确?结束源程序file.c目标程序file.obj库函数和其它目标程序可执行程序file.exe不正确正确有无调试C程序的流程编写C程序的步骤
本章概要1.1程序设计基础1.2C语言程序简介1.3编程环境及C程序执行过程1.4编码规范及编程习惯28本章概要1.1程序设计基础1.2C语言程序简介1.3编程环境及C程序执行过程1.4编码规范及编程习惯29编码规范及编程习惯
(1)一行只放一条语句。(2)养成随时给程序加注释的习惯。(3)程序的书写要有层次感,该缩进的一定要缩进。(4)编写函数时,变量定义部分和函数的执行部分之间增加一空行,或者在程序的执行部分按照完成的功能块增加相应的空行,会增加程序的易读性。(5)为变量起有意义的名字,既可以帮助程序员读懂程序,也可以避免变量的重复乱用,导致程序的逻辑错误。
(6)在运算符和赋值符的两边加上一个空格会增加程序的易读性。(7)以模块化方式考虑程序结构,以函数形式书写较复杂的程序。voidmain(){inti,sum;sum=0;for(i=1;i<=100;i++)if(i%2==0)sum+=i;printf("sum=%d",sum);}voidmain(){inti,sum;sum=0;for(i=1;i<=100;i++)if(i%2==0)sum+=i;printf("sum=%d",sum);}没有层次感层次清晰学好C能做什么?系统软件:操作系统;应用软件:图像图形处理,数据库,嵌入式控制,参数采集,统计分析;适用平台:Windows,Linux,Unix,…适用专业:计算机、通信、控制、自动化、材料、生物工程、应用数学、信息与计算科学,信息管理….
…..----“学好数理化,走遍天下!”----“学好C语言,走遍天
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 快手营销推广方案(3篇)
- 建工柱子施工方案范本(3篇)
- 高级防腐沥青施工方案(3篇)
- 中学学校2026-2027年工作计划(2篇)
- 眼穿伤后神经保护与修复
- 脑-机接口设备优化
- 深埋地下洞室施工期硬岩应力型灾害风险动态评估方法:理论、模型与实践
- 深化与革新:我国中小学教师准入资格认证体制的重塑与展望
- 淤泥面坝基与新加坝体接触界面力学性能及应力应变演化机理深度探究
- 淀粉样变心肌病的临床特征、诊断与治疗策略深度剖析
- ESG基础知识培训课件
- 法律效应的婚内保证书
- 育肥猪场月度汇报
- 多重耐药感染临床案例深度剖析
- 北京大学2022年强基计划笔试数学试题(解析版)
- 2024-2025学年清华大学版(2024)A版初中信息科技八年级下册(全册)知识点复习要点归纳
- 五年级下册数学期中必考易错题应用题六大类
- 密闭式静脉输血操作流程
- 审计案例第2章审计风险评估案例
- 2025年中国菠菜种植行业市场全景评估及发展战略规划报告
- 中国食物成分表标准版第6版
评论
0/150
提交评论