2021-C语言-CH01程序设计基础_第1页
2021-C语言-CH01程序设计基础_第2页
2021-C语言-CH01程序设计基础_第3页
2021-C语言-CH01程序设计基础_第4页
2021-C语言-CH01程序设计基础_第5页
已阅读5页,还剩29页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章程序设计基础天津科技大学公共基础与新技术部2主要内容程序设计语言程序设计的本质算法算法的表示结构化的程序设计3程序设计语言程序是用来完成特定功能的一系列指令。通过向计算机发布指令,程序设计人员可以控制其执行某个操作或进行某种运算。一组指令构成一个程序,可以用来解决一个具体问题。大侠霍元甲玄孙女—霍静红算是现在国内唯一习武的霍家子孙4语言的分类1.机器语言2.汇编语言3.高级语言

4.面向对象的程序设计语言:VB/VC/JAVA/C#5语言的分类4.面向对象的程序设计语言:VB/VC/JAVA/C#(构件化的语言)

编程语言的分层结构编程语言的分层结构思维,以下层语言为基础,再定义一套能力更强的新语言和编译器。人们使用新语言高效率地编写程序,使用编译器将其编译成下层语言能识别的源程序。7语言的执行方式编译执行:将源程序翻译生成一个可执行的目标程序,该目标程序可以脱离编译环境和源程序独立存和执行如C、C++解释执行:将源程序逐句解释成二进制指令,解释一句执行一句,不生成可执行文件,它的执行速度比编译方式慢。如Basic、Java等语言的版权问题与国产编程语言为什么没有国产的主流编程语言C语言没有版权问题Java在Oracle的手上x86、ARM指令集也受专利保护编程语言也面临着断供的风险!语言的版权问题与国产编程语言华为除了推出鸿蒙操作系统外,即将发布国产“仓颉”编程语言,补齐软件核心短板。颉,原姓侯冈,名颉,俗称仓颉先师,又史皇氏,又曰苍王、仓圣。《说文解字》、《世本》、《淮南子》皆记载仓颉是黄帝时期造字的左史官,见鸟兽的足迹受启发,分类别异,加以搜集、整理和使用,在汉字创造的过程中起了重要作用,被尊为“造字圣人”。10C语言简介C语言是书写UNIX操作系统的语言C语言是结构化的程序设计语言,它功能丰富、使用灵活、可移植性好广泛应用于科学计算、工程控制、网络通信、图像处理等领域。C语言是特别适宜作为学习程序设计的语言,也是实用性较强的编程语言。具体发展过程,参考教材P2C语言具体特点,参考教材P311C语言组成C程序由函数构成。一个C程序至少由一个函数构成,而且至少包含一个名为main的主函数。【例1.1】#include<stdio.h>voidmain()//函数首部{ printf("IlikeProgramming!\n");//输出一串字符}12冯·诺依曼系统结构(1)计算机由控制器、运算器、存储器、输入设备和输出设备5个部分构成。(2)计算机采用二进制,指令和数据均以二进制数形式表示和存放。(3)计算机按照程序规定的顺序将指令从存储器中取出,并逐条执行。13程序设计的本质程序设计的本质是设计能够利用计算机的五个部件完成特定任务的指令序列。【例1.2】#include<stdio.h>voidmain(){ intprice,number,total; scanf("%d%d",&price,&number);//输入 total=price*number;//计算 printf("total=%d\n",total);//输出}说明:分析五部件在程序中的作用过程。14程序设计的过程分析和定义实际问题建立处理模型设计算法设计流程图编写程序调试程序和运行程序15算法的概念和特性算法:解决一个问题所采取的一系列步骤。NikiklausWirth提出一个公式:程序=数据结构+算法数据结构是指在程序中数据的类型和组织形式。算法给出了解决问题的方法和步骤,是程序的灵魂它能决定如何操作数据,如何解决问题。同一个问题可以有多种不同算法。十四五规划与2035年远景目标《中共中央关于制定国民经济和社会发展第十四个五年规划和二〇三五年远景目标的建议》17算法举例算法,必须是计算机能够运行的方法。【例1.3】求1+2+3+4+…+100。第一种算法:书写“1+2+3+4+5+6+…+100”的表达式第二种算法:

显然,第二种算法要简单得多18算法举例【例1.4】求5!=1*2*3*4*5。step1:p=1step2:i=2step3:p=p*istep4:i=i+1step5:如果i<=5,那么转入step3执行step6:输出p,算法结束跟踪上述算法的执行过程,理解变量的作用,程序设计时可用的部件和功能。19算法举例【例1.5】求1*2*3*…*100。step1:p=1step2:i=2step3:p=p*istep4:i=i+1step5:如果i<=100,那么转入step3执行step6:输出p,算法结束只需要在【例1.4】算法,将循环条件改为“i<=100”20算法举例【例1.6】求1*3*5*…*101。step1:p=1step2:i=1step3:p=p*istep4:i=i+2step5:如果i<=101,那么转入step3执行step6:输出p,算法结束只需要将i的初值改为1、每次循环增加2即可21算法的特性(1)有穷性(2)确定性(3)输入:算法可以有输入,也可以没有输入,即有0个或多个输入。(4)输出(5)可行性22算法的表示方法自然语言:例:如果A大于B,那么最大值为A,否则最大值为B。

伪代码伪代码用介于自然语言和计算机语言之间的文字及符号来描述算法。例:ifA大于B,then最大值为A,else最大值为B传统流程图用流程图表示算法比较直观,它使用一些图框来表示各种操作,用箭头表示语句的执行顺序。25N-S流程图N-S流程图又称盒图,其特点是所有的程序结构均用方框表示。26结构化的程序设计方法1966年,Bohra和Jacopini提出了顺序结构、选择结构和循环结构三种基本结构,结构化程序设计方法使用三种基本结构组成算法已经证明,用3种基本结构可以组成解决所有编程问题的算法。27顺序结构顺序结构是指按照语句在程序中出现的先后次序执行28选择结构选择结构根据条件选择程序的执行顺序选择结构一29选择结构选择结构二30循环结构循环结构通过设定循环条件,在满足该条件时反复执行程序中的某部分

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论