版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言程序设计语言程序设计讲授讲授:潘洁珠潘洁珠学习方式学习方式听课听课 (启发式、会商式)(启发式、会商式)读书读书 (预习、复习)(预习、复习)上机尝试上机尝试课程设计课程设计* (概括练习)(概括练习)学习注重事项(学习注重事项(1)n优异优异上课听课上课听课完成作业完成作业考出高分考出高分n 要注重培养要注重培养:n自学功底(工夫在课外!)自学功底(工夫在课外!)n学会操纵资源(图书馆、书店、学会操纵资源(图书馆、书店、*络、教师)络、教师)n提高着手功底(在践行中学习、通过践行来经历提高着手功底(在践行中学习、通过践行来经历和懂得把握学问)和懂得把握学问)n互动互动非常多咨询题没有对
2、错、没有优劣非常多咨询题没有对错、没有优劣,要敢于发言、要敢于发言、敢于质询敢于质询学习注重事项(学习注重事项(2)n课程质量经管课程质量经管n邮件联系邮件联系:panjiezhugmail;n周日晚周日晚6: 00前前,我将发送后天学习的关键任我将发送后天学习的关键任务、课程要求、摸索题等到公共邮箱务、课程要求、摸索题等到公共邮箱08jsjsf.hftcgmail .特不讲明特不讲明n打开IE,在地址栏输入.gmail回车n输入用户名: 08jsjsf.hftc输入密码: hhxxttxs 似图考试成绩考试成绩n尝试成绩(尝试成绩(30%)n预习陈诉、尝试陈诉、尝试环节预习陈诉、尝试陈诉、尝
3、试环节n课程设计(非常重要)课程设计(非常重要)n平常成绩(平常成绩(10%)n 考勤和平常答复咨询题考勤和平常答复咨询题n期末考试(期末考试(60%)n上面三项中随意率性一项未达到及格线上面三项中随意率性一项未达到及格线,那么总评成绩不及那么总评成绩不及格!格!期望期望n正直理念正直理念,卖力对待学习卖力对待学习,学会学习的方式学会学习的方式,提提高自身的竞争力;高自身的竞争力;n为结业设计做筹办;为寻任务做筹办;为结业设计做筹办;为寻任务做筹办;n尝试和课程设计能够彼此探讨尝试和课程设计能够彼此探讨,但不得抄袭;但不得抄袭;n优异作品将保留优异作品将保留,将来做为展示将来做为展示.讲授时候
4、放置讲授时候放置n上课时候上课时候周三周三 上午上午 1、2节节 讲授楼讲授楼310 1-18周周周五周五 上午上午 3、4节节 讲授楼讲授楼310(或尝试室)(或尝试室) 1-18周周n尝试周次尝试周次: 1,3,5,7,8,10,13-18周周C语言程序设计语言程序设计n讲授要求讲授要求n把握程序设计语言的根基学问把握程序设计语言的根基学问n常用算法常用算法n初步的程序设计功底初步的程序设计功底n学习方式学习方式n自主学习自主学习n重视上机践行重视上机践行似何完快学会用似何完快学会用C语言履行程序设计语言履行程序设计n领会程序设计语言领会程序设计语言(C语言语言)n仿照、改写、编写仿照、改
5、写、编写n通过接续的编程践行通过接续的编程践行,追步领会和把握程序追步领会和把握程序设计的根基理念和方式设计的根基理念和方式.教材和参考书教材和参考书n全国统计机等级考试二级教程全国统计机等级考试二级教程C语言程序设语言程序设计(计(2021版)版) 教诲部考试中间编教诲部考试中间编,高等教诲出版高等教诲出版社社Chap 1 引引 言言n一个一个C语言程序语言程序n程序与程序设计语言程序与程序设计语言nC语言的进展历史与特点语言的进展历史与特点n实现咨询题求解的环节实现咨询题求解的环节本章要点本章要点n啥是程序?程序设计语言见谅哪些功能?啥是程序?程序设计语言见谅哪些功能?n程序设计语言在语法
6、上见谅哪些内容?程序设计语言在语法上见谅哪些内容?n结构化程序设计有哪些根基的操纵结构?结构化程序设计有哪些根基的操纵结构?nC语言有哪些特点?语言有哪些特点?nC语言程序的根基框架似何?语言程序的根基框架似何?n形成一个可运行的形成一个可运行的C语言程序需要通过哪些语言程序需要通过哪些环节?环节?n似何用流程图描述简单的算法?似何用流程图描述简单的算法?1.1 一个一个C语言程序语言程序例例1-1求阶乘咨询题求阶乘咨询题.输入一个正整数输入一个正整数n,输出输出n!.(ex1_1.cpp) #include * 编译预操作号令编译预操作号令 *int main(void) * 主函数主函数
7、*int n; * 变量定义变量定义 *int factorial(int n); * 函数表明函数表明 * scanf(%d, &n); * 输入一个整数输入一个整数 *printf(“%dn”, factorial(n); * 调用函数统计阶乘调用函数统计阶乘 * return 0; int factorial(int n) * 定义统计定义统计 n! 的函数的函数 *int i, fact = 1; for(i = 1; i = n; i+) * 循环循环 *fact = fact * i; return fact;输入输入 4 4输出输出 24 24C程序由函数组成程序由函数组
8、成有且只有一个主函数有且只有一个主函数main 1.2 程序与程序设计语言程序与程序设计语言n程序程序n人们为解决某种咨询题用统计机能够识不人们为解决某种咨询题用统计机能够识不的代码编排的一系列加工环节的代码编排的一系列加工环节.n程序的履行环节现实上是对程序所表达的程序的履行环节现实上是对程序所表达的信息履行操作的环节信息履行操作的环节.n程序设计语言程序设计语言n提供了一种表达信息与操作信息的功能提供了一种表达信息与操作信息的功能n要求程序员依照语言的范例编程要求程序员依照语言的范例编程1.2 程序与程序设计语言程序与程序设计语言n程序与指令程序与指令n程序设计语言的功能程序设计语言的功能
9、n程序设计语言的语法程序设计语言的语法n程序的编译与编程环境程序的编译与编程环境程序与指令程序与指令n指令指令:统计机的一个最根基的功能统计机的一个最根基的功能n似实现一次加法运算或实现一次大小的判不似实现一次加法运算或实现一次大小的判不n统计机的指令系统统计机的指令系统:统计机所能实现的指令统计机所能实现的指令的集合的集合 n程序程序:一系列统计机指令的有序组合一系列统计机指令的有序组合程序与指令程序与指令例例1-2 编写程序编写程序,分不求和与乘积分不求和与乘积虚拟的统计机指令系统(虚拟的统计机指令系统(7条指令条指令 )指令指令1:Input X 将当前输入信息存储到内存的将当前输入信息
10、存储到内存的X单单元元指令指令2:Output X 将内存将内存X单元的信息输出单元的信息输出.指令指令3:Add X Y Z 将内存将内存X单元的信息与单元的信息与Y单元的信单元的信息相加同时将结论存储到息相加同时将结论存储到Z单元单元.指令指令4:Sub X Y Z 将内存将内存X单元的信息与单元的信息与Y单元的信单元的信息相减同时将结论存储到息相减同时将结论存储到Z单元单元.指令指令5:BranchEq X Y P 对比对比X与与Y,如果相等那么程如果相等那么程序跳转到序跳转到P处履行处履行,否那么接着履行下一条指令否那么接着履行下一条指令.指令指令6:Jump P 程序跳转到程序跳转到
11、P处履行处履行.指令指令7:Set X Y 将内存将内存Y单元的值设为单元的值设为X. 程序与指令程序与指令n输入输入输入输入3个数个数A, B和和C,求求A+B+C的结论的结论nInput A; 输入第输入第1个信息到存储单元个信息到存储单元A中中nInput B; 输入第输入第2个信息到存储单元个信息到存储单元B中中nInput C; 输入第输入第3个信息到存储单元个信息到存储单元C中中nAdd A B D; 将将A、B相加同时将结论存在相加同时将结论存在D中中nAdd C D D; 将将C、D相加同时将结论存在相加同时将结论存在D中中nOutput D; 输出输出D的内容的内容程序与指令
12、程序与指令n输入输入2个数个数A和和B,求求A*B的结论的结论n1Input A; 输入第输入第1个信息到存储单元个信息到存储单元A中中n2Input B; 输入第输入第2个信息到存储单元个信息到存储单元B中中n3Set 0 X; 将将X设为设为0,此处此处X用以统计用以统计A累加的累加的次数次数n4Set 0 Z; 将将Z设为设为0,此处此处Z用以存放用以存放A*B的结论的结论n5BranchEq X B 9; 判不判不X与与B是否相等;如果是否相等;如果相等讲明相等讲明A已累加了已累加了B次次,程序跳转到第程序跳转到第9条指令条指令,输出输出结论结论n6Add Z A Z; Z = Z +
13、 An7Add 1 X X; X = X + 1n8Jump 5; 程序跳转到第程序跳转到第5条指令条指令,接着循环接着循环履行第履行第6条、条、7条指令条指令n9Output Z; 输出输出Z的值的值,该值等于该值等于A*B程序设计语言的功能程序设计语言的功能n信息表达信息表达:表达所要操作的信息表达所要操作的信息n流程操纵流程操纵:表达信息操作的流程表达信息操作的流程信息表达信息表达n信息表达信息表达:一样将信息抽象为如果干类型一样将信息抽象为如果干类型n信息类型信息类型:对某些具有共同特点的信息集合对某些具有共同特点的信息集合的总称的总称n代表的信息(信息类型的定义域)代表的信息(信息类
14、型的定义域)n在这些信息上做些啥(即操纵或称运算)在这些信息上做些啥(即操纵或称运算)n例似例似:整数类型整数类型n见谅的信息见谅的信息:,-2,-1,0,1,2, n作用在整数上的运算作用在整数上的运算:+ 、 - 、 * 、 等等信息表达信息表达nC语言提供的信息类型语言提供的信息类型n根基信息类型根基信息类型:程序设计语言事先定义好程序设计语言事先定义好,供供程序员直截了当使用程序员直截了当使用,似整型、实型(浮点似整型、实型(浮点型)、字符型等型)、字符型等.n组织类型组织类型:由程序员组织由程序员组织,似数组、结构、文似数组、结构、文件、指针等件、指针等.n各种信息类型的常量与变量形
15、式各种信息类型的常量与变量形式n常量(常数)与变量常量(常数)与变量 流程操纵流程操纵 n结构化程序设计方式结构化程序设计方式n将复杂程序分割为如果干个彼此独站的模将复杂程序分割为如果干个彼此独站的模块块n模块模块:一条语句(一条语句(Statement)、一段程序)、一段程序或一个函数(子程序)等或一个函数(子程序)等n单入口、单出口单入口、单出口流程操纵流程操纵 n任何程序都能够将模块通过任何程序都能够将模块通过3种根基的操种根基的操纵结构履行组合来实现纵结构履行组合来实现次序结构次序结构循环结构循环结构分支结构分支结构流程图与NS图1. 流程图常见图形起止框操作框输入输出框推断框流程线毗
16、邻点2.NS图:去掉流程线,算法的每一步都用矩形框来描述.结构化程序设计和模块化结构1.结构化程序(三种根基结构)2.次序结构例:求两个整数和.最先结束a=1,b=2s=a+b输出sa=1,b=2s=a+b输出s#include “stdio.h”main() int a,b,s; a=1; b=2; s=a+b; printf(“a+b=%dn”,s); a+b=3运行结论:挑选(分支)结构挑选(分支)结构例例:推断用户输入的整数是否是偶数推断用户输入的整数是否是偶数.最先结束输出“否”输入n推断n是否是偶数输出“是”YN输入nY Nn为偶数?输出“是” 输出“否”#include “std
17、io.h”main() int n; scanf(“%d”,&n); if (n%2=0) printf(“yesn”); else printf(“non”); 循环结构循环结构例例:求求1+2+100.#include “stdio.h”main() int i=1,s=0; while (i=100) s=s+i; i=i+1; printf(“%dn”,s); 最先结束输出si=100 ?i=1,s=0s=s+ii=i+1YNi=1,s=0s=s+ii=i+1i(大于)(大于)程序设计语言的语法程序设计语言的语法n C语言的关键语法单位语言的关键语法单位n(1)表达式)表达式:
18、 运算符与运算对象组合便形运算符与运算对象组合便形成了表达试成了表达试.似似,2 + 3 * 4n(2)变量定义)变量定义: 变量也有信息类型变量也有信息类型,所以在所以在定义变量时要讲明相应变量的类型定义变量时要讲明相应变量的类型.似似: int i;n(3)语句)语句: 语句是程序最根基的履行单位语句是程序最根基的履行单位,程序的功能便是通过对一系列语句的履行来程序的功能便是通过对一系列语句的履行来实现的实现的.n(4)函数定义与调用)函数定义与调用 程序设计语言的语法程序设计语言的语法其中其中,(3)语句语句:表达式语句表达式语句:表达式加分号表达式加分号“;” 分支语句分支语句:实现分
19、支操纵环节实现分支操纵环节 if (a b) x = a;else x = b;循环语句循环语句:实现循环操纵的环节实现循环操纵的环节 sum = 0; * 初始化初始化sum和和i *i = 1; while (i 统计机直截了当能懂得的指令序列统计机直截了当能懂得的指令序列n编译器编译器:对源程序履行词法对比、语法与语义对比对源程序履行词法对比、语法与语义对比,生成可生成可履行的代码履行的代码.n直截了当指出程序中的语法错误直截了当指出程序中的语法错误n 编程环境编程环境n包罗编纂程序(包罗编纂程序(Edit)、编译()、编译(Compile)、调试)、调试(Debug)等环节)等环节.n
20、 n把握程序设计语言把握程序设计语言:依照语言的语法依照语言的语法,用语言表达信息、实用语言表达信息、实现程序的操纵现程序的操纵,同时会使用编程环境同时会使用编程环境.C 语言上机环节语言上机环节n源程序源程序n test.cpp test.objn 可履行代码可履行代码n n test.exe编译编译毗邻毗邻 运行运行1.3 C语言的进展历史与特点语言的进展历史与特点 n 历史历史n 1972年年:贝尔尝试室的贝尔尝试室的Dennis Ritchie在在B语言的根本上设计同时实现了语言的根本上设计同时实现了C语言语言.n1978年年:B.W.Kernighan和和D.Ritchie(简称(简
21、称K & R)合著的)合著的The C Programming Language是各种是各种C语言版本的根本语言版本的根本,称之称之为旧规格为旧规格C语言语言.n1983年年:美国国家规格化协会(美国国家规格化协会(ANSI)拟定)拟定了新的了新的C语言规格语言规格,称称ANSI C.C语言的特点语言的特点 1C语言是一种结构化语言语言是一种结构化语言2C语言语句简洁、紧凑语言语句简洁、紧凑,使用方便、灵活使用方便、灵活32个关键字个关键字,9种操纵语句种操纵语句,程序书写形式自由程序书写形式自由.3C语言程序易于移植语言程序易于移植C语言将与硬件有关的身分从语言主体中分别出语言将与硬
22、件有关的身分从语言主体中分别出来来,通过库函数或其他有效程序实现它们通过库函数或其他有效程序实现它们. 4C语言有强盛的操作功底语言有强盛的操作功底5生成的意图代码质量高生成的意图代码质量高,运行功效高运行功效高C语言的特点语言的特点 n6信息类型查抄不严格信息类型查抄不严格,表达式表现二义性表达式表现二义性,不具备信息越界自动查抄功能不具备信息越界自动查抄功能,运算符的优运算符的优先级与联合性对初学者难于把握先级与联合性对初学者难于把握.nC 语言中大小写字母代表差别含义语言中大小写字母代表差别含义1.4 实现咨询题求解的环节实现咨询题求解的环节 咨询题咨询题:求求1100间全部偶数的和间全
23、部偶数的和.1咨询题对比与算法设计咨询题对比与算法设计 求在必然范畴内(求在必然范畴内(1100)、满足必然前提)、满足必然前提(偶数偶数)的的如果干整数的和如果干整数的和,求累加和求累加和. 思路思路:设置一个变量设置一个变量(sum),其初值为其初值为0,接着在接着在1100的数中的数中(i)寻觅偶数寻觅偶数,将它们一个一个累加到将它们一个一个累加到sum中中.一步累加一步累加:sum = sum + i; 重复累加重复累加,用循环语句实现用循环语句实现,在循环环节中在循环环节中:(1) 判不判不 i 是不是偶数是不是偶数:用分支操纵语句来实现用分支操纵语句来实现.(2) 对循环次数履行操纵对循环次数履行操纵:通过通过 i 值的改变值的改变咨询题对比与算法设计咨询题对比与算法设计 思路思路 确定算法确定算法算法算法:一组明白的解决咨询题的环节一组明白的解决咨询题的环节,它产生结它产生结论同时可在有限的时候内终止论同时可在有限的时候内终止.算法的描述算法的描述:自然语言自然语言伪代码伪代码流程图流程图:算法的图形示意法算法的图形示意法 sum = 0i = 1i = 100i 是偶数?是偶数?sum=sum+ii=i+1输出输出sum真真真真假假假假实现咨询题求解的环节实现咨询题求解的环节2编纂程序编纂程序(ex1_2.cp
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度浔购F000353632食品级冰柜采购协议3篇
- 2025年度个人房产买卖居间代理服务协议3篇
- 二零二五年度环保型打印耗材研发与销售合同可打印协议书下载3篇
- 医疗技术产品的研发与市场应用
- 二零二五年度瓷砖行业环保公益活动赞助合同3篇
- 未来办公环境绿色办公创业项目策划
- 二零二五年度编织袋行业政策研究与解读合同3篇
- 2025版显示屏技术改造与升级合同3篇
- 湖北2025年湖北武汉理工大学专职辅导员招聘笔试历年参考题库附带答案详解
- 2025年度钢构工程钢结构焊接与检验合同协议
- 云南省普通高中学生综合素质评价-基本素质评价表
- 2024年消防产品项目营销策划方案
- 旅游公司发展规划
- 闻道课件播放器
- 03轴流式压气机b特性
- 五星级酒店收入测算f
- 大数据与人工智能ppt
- 人教版八年级下册第一单元英语Unit1 单元设计
- GB/T 9109.5-2017石油和液体石油产品动态计量第5部分:油量计算
- 邀请函模板完整
- 2023年江苏省南京市中考化学试卷2
评论
0/150
提交评论