1,大学C++程序设计教程,C++基础小结 (1~8章),2,C++程序的基本结构,[全局变量说明] [#include ] [子函数1 [(形式参数)] { [子函数局部变量说明] [语句序列] } [。。。。] int main( ) { [局部变量说明] [语句序列] return 0; },C++程序由函数组成;至少包括主函数main()和(或)若干个子函数。 一个函数又由变量及参数说明语句和语句序列构成。 每个语句必须用分号结尾。一个语句行可以写多个语句,一个语句可以写在多行上。 C++语言允许在程序中插入注释行。 C++语言提供了包括I/O功能在内的大量标准库函数,但调用这些函数时,必须在程序头部包含头文件。,,函数体,3,三大基本结构示意图,顺序结构 选择结构,循环结构,,,模块(语句)A,模块(语句)B,,,,条件,程序模块1,,,,,,,,成立,不成立,程序模块2,,,,,条件,,程序模块,,,,,,,,,,,不成立,成立,(当型循环),程序模块,,,,,,,成立,不成立,,条件,(直到型循环),,4,1、顺序结构,r = p; p = q; q = r;,5,2、选择结构(之一),一路分支 语句格式: if (表达式) 语句序列,条件?,,,,成立,不成立,语句序列,,,两路分支 语句格式: if (表达式) 语句序列1 else 语句序列2,,,,条件?,语句序列 1,,,,,,,成立,不成立,语句序列 2,,,,,语句序列可以是一个语句,也可以是复合语句结构(分程序),,6,分程序,{ } 分程序在语法上是一个整体,相当于一个语句。 分程序中也可以再嵌套新的分程序,用以构成更加复杂的控制结构。,7,选择结构(之二),多路(开关)选择语句 : switch(整数表达式) { case 数值1: 语句序列1; …. case 数值n: 语句序列n; [default : 语句序列n+1;] },,计算整型表达式,,,,值 = ?,,,,,,语句 序列1,,,…….,语句 序列2,语句 序列n,,,,,,带break语句的多分支结构,8,3、循环结构(之一),当型循环 语句格式: while (表达式) [ { ] 语句序列 [ } ],直到型循环 语句格式: do { 语句序列 } while (表达式);,,循环体,,循环体,条件?,语句序列,,,,,,,成立,不成立,,,语句序列,,,,,,,,,不成立,成立,条件?,,9,循环结构(之二),for语句用来实现计数循环: for (; ; ) ,10,C++数据类型的分类,11,类型不同的数据之间的混合算术运算,不同类型的数据在参加运算之前会自动转换成相同的类型, 然后再进行运算。 转换规则 转换的原则是由低级向高级转换 char - int - float - double 例: int a; a= 5/2 ,结果a为2 强制类型转换 格式:(类型语句)e 例: int i1=1,i2=2;double d1; d1 = (double)i1/i2;结果d1为0.5,12,数组,数组: 具有相同类型的数据的集合。 数组用数组名来标识。 其中的每个变量(数组元素)通过该变量在数组中的相对位置(下标)来引用。 特点: 常用于处理大批量数据; 数据特点:存在内在联系; 数组——具有相同数据类型的变量集合; 这些变量都有相同名字,但下标不同; 称这些变量为数组元素; 只有一个下标——一维数组; 有两个下标——二维数组。,13,字符型数组和字符串处理库函数,字符 是用单引号括起来的单个字符,它在存储器中占1个字节。例如,‘A’ 字符串 是用双引号括起来的一串字符,它在存储器中占n+1个字节,即字符串的结束符‘\0’也占1个字节的位置。例如,”abc”; 有效字符的个数称为字符串长度。 例如,”abc”的长度为3,但占4个字节 (’\0’占一位)。 字符串是用字符型数组存放的。,14,字符串长度与字符数组大小的关系,char A[10]=“China”;,A[5],A[6],A[7],A[8],A[9],A[0],A[1],A[2],A[3],A[4],‘\0’,?,?,?,?,‘C’,‘h’,‘i’,‘n’,‘a’,15,函数的定义,函数必须先定义,后使用。 定义函数的一般格式为: () { },,函数体,16,函数的调用,函数要先定义,后调用。 调用函数时要考虑到函数本身的参数; 调用标准库函数时,要包含相应的头文件 输入/输出函数 iostream.h 字符串函数 string.h 常用数学函数 math.h 调用自定义函数时,要定义相应的实参,并给这些实参赋值。 实参与形参必须一一对应: “类型一致、位置一致、个数一致” 实参与形参有3种结合方式: 值调用、引用调用和地址调用。,17,指针型变量的定义,一般格式: 类型描述符 *指针变量名表; 例:int * ptr; float *array; char *s1,*s2; 指针类型 内存地址值是固定不变的,不同类型的指针本身所占据的存储区域都一样大。 规定了用指针间接访问数据时的访问方式 为指针的算术运算提供依据,18,“*”和“&”运算符,“,19,自顶向下, 逐步求精,结构化程序设计支持“自顶向下, 逐步求精”的程序设计方法。 “自顶向下” 是将复杂、大的问题划分为小问题,找出问题的关键、重点所在,然后用精确的思维定性、定量地去描述问题。 “逐步求精” 是将现实世界的问题经抽象转化为逻辑空间或求解空间的问题。复杂问题经抽象化处理变为相对比较简单的问题。经若干步抽象(精化)处理,最后到求解域中只是比较简单的编程问题。,20,基本思想和方法,基本思想 从问题本身开始,经过逐步求精,将解决问题的步骤分解为由基本程序结构模块组成的结构化程序框图,据此编写程序。 基本方法 从题目本身开始, 找出解决问题的基本思路, 将其用结构化框图(可能是非常粗糙)表示。 对框图中的比较抽象的、用文字描述的模块进一步分析细化,结果仍用结构化框图表示。 将所求解问题的所有细节都弄清楚后, 再可以根据框图直接写出相应程序代码。,21,完全数,找出2~10000之内的所有完全数。 所谓完全数,即其各因子之和正好等于本身的数。 如6=1+2+3,28=1+2+4+7+14,所以6,28都是完全数。 #include void main() { int k; for(int n=2;n10000;n++) { k=0; for(int m=1;m=n/2;m++) if(n%m==0)k=k+m; if(k==n) coutkendl; } },22,自顶向下, 逐步求精的解法,void main() { for(int i=2;i=10000;i++) if(iscomplete(i)) coutiendl; } bool iscomplete(int n) { int s=0; for(int i=1;i=n/2;i++) if(isfactor(i,n)) s=s+i; return s==n; } bool isfactor(int i,int n) {return n%i==0;},23,学好程序设计语言的唯一途径是 你的编程能力与你在计算机上投入的时间成,结 束 语,上机练习,正比,

展开阅读全文

c语言程序设计教程+西安交通大学,大学C程序设计教程-西安交通大学.ppt相关推荐

  1. 新编大学计算机基础教程txt,新编大学计算机基础教程新大学计算机基础教程.doc...

    新编大学计算机基础教程新大学计算机基础教程 <新编大学计算机基础教程>教学设计设计人:hbx基本信息课时:75 课程类型:新编大学计算机基础教程学分:10后续课程:组网技术.操作系统课程设 ...

  2. 西安财经大学计算机考研科目,西安财经大学2020年硕士研究生考试复试科目与参考书目...

    复试即将开始,备考准备不足的考生赶紧看过来,下面由出国留学网小编为你精心准备了"西安财经大学2020年硕士研究生考试复试科目与参考书目",持续关注本站将可以持续获取更多的考研资讯! ...

  3. 计算机入门教程 office2007入门,大学计算机基础教程Office2007版.PPT

    大学计算机基础教程Office2007版.PPT 5.2 创建演示文稿 演示文稿是由一张张独立的幻灯片组成的,把幻灯片放在一起进行逐张播放,就形成了演示文稿.演示文稿可以应用于很多方面,比如演示课件. ...

  4. 西安邮电大学计算机学院系主任,西安邮电大学计算机学院

    2014年11月12日晚7:30, 西安邮电大学计算机学院网络科技协会(www.xiyouant.org,微信公众平台:xiyounet)举办的网络科技协会纳新宣讲会在长安校区东区FF207教室举行. ...

  5. 大学计算机实验教程实验6,大学计算机实验教程.第6版

    摘要: <大学计算机实验教程(第6版)/高等学校计算机基础教育教材精选>是"十一五"国家级规划教材,北京市教学成果奖教材,北京市精品教材<大学计算机教程(第6版) ...

  6. 大学计算机教程 曾俊,大学计算机基础教程:曾俊//李柳柏 : 电子电脑 :计算机技术 :计算机原理与基础 :浙江新华书店网群...

    导语 曾俊和李柳柏主编的<大学计算机基础教程>针对CCT和NCRE考试,对大学计算机基础教学的基本内容做了基础性和科学性研究,既精辟地讲解了计算机的基础知识,又突出了计算机的实际应用和操作 ...

  7. 大学计算机应用教程2018答案,大学计算机基础教程

    大学计算机基础教程 (2018年电子工业出版社出版的图书) 语音 编辑 锁定 讨论 上传视频 <大学计算机基础教程>是2018年电子工业出版社出版的图书,作者是郭师虹. 书    名 大学 ...

  8. 计算机应用技术教程的答案,大学计算机应用技术教程答案

    摘要: 大学就是检验.行(作应该类字对分段进)操,用技行分总时据进类汇对数.广东降水均布不量时空分,术教中心呈多分布.... 大学就是检验. 息的同信主要知不有感器构传感成靠具,计算机.嗅.听觉.觉等 ...

  9. 计算机网络西安邮电大学,计算机网络实验报告西安邮电大学.doc

    ..... word格式.整理版 西安郵電大學 计算机网络 课内实验报告书1 院系名称 : 计算机学院 实验题目 : 网络命令操作 学生姓名 : 专业名称 : 班 级 : 学号 : 时间 : 计算机网 ...

最新文章

  1. ueditor上传组件显示乱码_最全面的移动端 UI组件设计详解:中篇
  2. 网络对抗技术_实验一_网络侦查与网络扫描
  3. 《MongoDB管理与开发精要》——3.2节查询语法
  4. 使用SAX解析XML文件
  5. php 定时缓存,php如何定时删除缓存??
  6. 这里有一份面筋请查收(八)
  7. 我的世界服务器神秘修改节点,我的世界神秘时代:历经千难万险,终于解锁全部节点内容...
  8. python实例 85,86
  9. 学了前端可以做什么?前端开发有哪些应用场景??
  10. 智能穿戴市场群雄逐鹿,OPPO入局能没有杀手锏?
  11. mysql每10万条数据分区_WebGIS项目中利用mysql控制点库进行千万条数据坐标转换时的分表分区优化方案...
  12. Introduce Local Extension
  13. Java实现简单的银行管理系统(最基本的功能/易上手)
  14. 真格量化常见报错信息和Debug方法
  15. YouTube视频推荐系统总结
  16. 寻找IT行业中的引爆点
  17. 动态规划[SDUT]全题解超详细注释哦!
  18. lh服务器注册,登不进去的人请看这里:LH服无法登录问题官方解释
  19. win7系统提示“此windows副本不是正版” 解决方案
  20. 【全栈接口测试进阶系列教程】精通api接口测试,接口分类,接口架构,http,webservice,dubbo接口协议,接口流程,接口工具,cookie,session,token接口鉴权原理以及实战

热门文章

  1. 浅谈人工智能的伦理问题
  2. JavaScript时间日期
  3. IEEE Geoscience and Remote Sensing Letters (GRSL)从投稿到录用过程分享
  4. C++/OpenCV实现图像目标识别与分类
  5. Nginx配置项优化详解
  6. 大数据分析 2021年Q3酒店品牌营销网络传播特征
  7. 天翼云弹性计算服务器,获取天翼云Windows弹性云主机的密码操作步骤
  8. 一文让你了解生成模型相关的解码Tricks
  9. PyCharm中集成Arcpy环境
  10. Python 1-10 字符串操作