还剩58页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
计算机编程基础课程介绍目标内容考核方式本课程旨在帮助您掌握计算机编程的课程内容包括计算机发展史、计算基本知识,并能够编写简单的程序机组成、编程语言概述、数据类型、学习过程中将涵盖编程语言的语法、变量与常量、运算符、控制语句、数数据结构、算法等基础概念,以及一组、字符串、函数、指针、结构体、些实用的编程技巧文件操作、预处理指令、动态内存分配、链表、面向对象编程、常见算法、数据结构、编程规范、调试技巧、常见错误与解决方法、编程实践、进一步学习资源计算机发展简史算盘1算盘是古代的一种手动计算工具,已有数千年的历史它利用珠子在轨道上移动来进行加减运算,是早期人类进行计算的重要工具机械计算器217世纪,帕斯卡发明了第一台机械计算器,能够进行加减运算之后,莱布尼茨改进机械计算器,使其能进行乘除运算机械计算器的出现标志着人类计算能力的飞跃电子计算机320世纪40年代,第一台电子计算机ENIAC诞生,它使用电子管作为主要元件,体积庞大,耗电量惊人,但运算速度远超机械计算器电子计算机的出现开创了计算机发展的新时代现代计算机4计算机的组成硬件软件计算机硬件是指构成计算机的物理设备,包括中央处理器CPU、内存、硬盘、显卡、主板、键盘、鼠标等硬件负责执行计算、存储数据、显示信息、接收用户输入等任务计算机工作原理控制单元控制单元负责控制计算机各个部件的运行,解释指令,并指挥数据在各个部件之间流动1算术逻辑单元2算术逻辑单元ALU负责执行算术运算和逻辑运算,是计算机进行数据处理的核心部件存储器存储器用来存储数据和程序指令,包括内存RAM和硬盘内存速度快,但容量小,主要用3于存放当前正在运行的程序和数据硬盘速度慢,但容量大,主要用于长期存储数据和程序输入输出设备4计算机语言概述机器语言汇编语言机器语言是用二进制代码表示的汇编语言用助记符代替二进制代指令,是计算机可以直接理解和码,提高了程序的可读性汇编执行的语言机器语言依赖于特语言需要通过汇编器翻译成机器定的硬件架构,可读性差,编程语言才能被计算机执行汇编语难度极高但它是最底层的语言仍然与硬件密切相关,但比机言,能够直接控制计算机硬件器语言更容易理解和编写高级语言编程语言的选择语言语言语言语言C C++Java PythonC语言是一种结构化编程C++语言是一种面向对象Java语言是一种面向对象语言,具有高效性、可移编程语言,基于C语言,编程语言,具有平台无关植性、灵活性和强大的功增加了面向对象特性,如性、安全性和可扩展性能C语言是许多其他语封装、继承、多态等Java语言被广泛应用于言的基础,被广泛用于系C++语言功能强大,应用Web开发、Android应用统编程、嵌入式开发、游广泛,适合开发各种大型开发、企业级应用开发等戏开发等领域应用程序领域编译与解释编译解释编译是指将高级语言编写的源代码一次性翻译成机器语言,生成可执行文件编译后的程序可以独立运行,不需要解释器编译语言一般执行效率较高,但需要经过编译过程,开发速度相对较慢编程环境搭建Visual StudioCode Sublime Text12Visual StudioCode VSSublimeText是一款轻量Code是一款功能强大的级的代码编辑器,拥有简代码编辑器,支持多种编洁的界面和强大的功能,程语言,拥有丰富的插件支持多种编程语言,适合生态系统,可用于开发各快速开发种应用程序IntelliJ IDEA第一个程序Hello,World!printHello,World!数据类型整型浮点型字符型用于存储整数,例如用于存储小数,例如用于存储单个字符,
10、-
5、
03.
14、-
2.
5、
0.0例如a、B、#布尔型用于存储真值或假值,例如True、False变量与常量变量常量变量是用于存储数据的容器,其值可以在程序运行过程中常量是用于存储数据的容器,其值在程序运行过程中不能改变变量需要先声明,再赋值变量名由字母、数字和改变常量需要先声明,再赋值常量名一般用大写字母下划线组成,第一个字符必须是字母或下划线表示,以区别于变量名运算符算术运算符关系运算符逻辑运算符算术运算符用于执行算术运算,包括关系运算符用于比较两个操作数,结逻辑运算符用于对布尔值进行操作,加+、减-、乘*、除/、取模果为真或假,包括大于、小于包括与and、或or、非not%、自增++、自减--、等于==、不等于!=、大于等于=、小于等于=表达式运算符优先级运算符优先级决定了表达式中不同运算符的执行顺序优先级高的运算符先执行,优先级低的运算符后执行结合性结合性决定了相同优先级的运算符的执行顺序结合性有两种左结合性和右结合性左结合性是指运算符从左到右依次执行,右结合性是指运算符从右到左依次执行输入与输出请输入您的姓名name=input你好,print,name,!控制语句选择结构2根据条件判断的结果选择执行不同的代码块,例如if语句、switch语句顺序结构程序按照代码顺序执行,从上到下依次1循环结构执行每条指令重复执行一段代码块,直到满足条件才停止循环,例如for循环、while循环、3do-while循环语句if单分支双分支多分支if condition:if condition:if condition1:statements statements statementselse:elif condition2:statementsstatementselse:statements语句switchswitch expression:case value1:statementsbreakcase value2:statementsbreakdefault:statements循环forfor iin range10:printi循环whilei=0while i10:printii+=1循环do-whilei=0do:printii+=1while i10循环控制break continuebreak语句用于立即退出当前循环,不再执行循环体中的continue语句用于跳过当前循环的剩余代码,继续执行下剩余代码一次循环数组numbers=[1,2,3,4,5]输出printnumbers
[0]#1输出printnumbers
[2]#3二维数组matrix=[[1,2,3],[4,5,6],[7,8,9]]输出printmatrix
[0]
[1]#2输出printmatrix
[1]
[2]#6数组的应用冒泡排序选择排序冒泡排序是一种简单的排序算法,它重复遍历数组,将相选择排序是一种简单的排序算法,它重复遍历数组,找到邻的两个元素进行比较,如果顺序不正确就交换它们的位最小(或最大)的元素,将其交换到数组的开头这个过置这个过程不断重复,直到数组有序程不断重复,直到数组有序字符串message=Hello,world!printmessage字符串函数strlen strcpystrcat strcmpstrlen函数用于获取字符strcpy函数用于将一个字strcat函数用于将一个字strcmp函数用于比较两个串的长度符串复制到另一个字符串符串连接到另一个字符串字符串的大小的末尾指针指针的概念指针是一种特殊的数据类型,它存储变量或对象的内存地址指针可以1用来访问和修改变量或对象的值指针的基本操作指针的基本操作包括定义、赋值、解引用、运算指2针需要先定义,再赋值,才能使用解引用操作符*用于访问指针指向的内存地址中的值指针与变量num=10ptr=num输出的内存地址printptr#num输出print*ptr#10指针与数组arr=[1,2,3,4,5]ptr=arr输出printptr
[0]#1输出printptr
[2]#3函数函数的定义函数的调用输出你好,!def greetname:greetAlice#Alice你好,print,name,!函数参数值传递地址传递值传递是指将实参的值复制到形参,形参的变化不会影响地址传递是指将实参的地址传递给形参,形参的变化会影实参值传递适合传递简单的变量值,不会修改原始数据响实参地址传递适合传递复杂的变量或对象,可以修改原始数据函数返回值def addx,y:return x+yresult=add3,5输出printresult#8变量的作用域局部变量全局变量局部变量定义在函数内部,只能在函数内部使用,函数执全局变量定义在函数外部,可以在所有函数中使用,包括行完毕后就会被销毁局部变量的作用域只限于定义它的定义它的函数全局变量的作用域是整个程序函数递归函数def factorialn:if n==0:return1else:return n*factorialn-1结构体struct Student:name:strage:intscore:float结构体数组students=[Student for_in range3]students
[0].name=Alicestudents
[0].age=18students
[0].score=90结构体指针student=Studentptr=studentptr.name=Bobptr.age=20文件操作file=opendata.txt,rdata=file.readfile.close文件读写文本文件二进制文件文本文件存储的是字符数据,可以使用文本编辑器打开查二进制文件存储的是二进制数据,需要使用特定的软件才看文本文件可以使用字符流进行读写能打开查看二进制文件可以使用字节流进行读写预处理指令#include#define#include指令用于将其他源文件包含到当前源文件中它#define指令用于定义宏,宏可以是常量、变量、函数等可以包含标准库头文件,也可以包含自定义头文件宏在预处理阶段会被替换成实际的值,提高代码的可读性和可维护性宏定义#define MAX_SIZE100#define SQUARExx*x动态内存分配malloc freemalloc函数用于从堆内存中分配一块内存空间,并返回指free函数用于释放使用malloc分配的内存空间释放内存向该内存空间的指针malloc需要指定分配的内存空间大空间后,该内存空间可以被其他程序使用小链表链表的概念链表是一种线性数据结构,它通过指针将一组节点链接在一起每个节点都包含数据和指向下一个节点的指针链表的长度可以动态改变,适1合存储长度未知的数据基本操作链表的基本操作包括创建、插入、删除、查找、遍历2等链表的实现方式灵活,可以根据实际需要设计不同的链表类型,例如单链表、双链表、循环链表等单链表的操作创建插入删除创建单链表需要创建节点,并将节点插入操作需要将新节点插入到链表中删除操作需要从链表中删除指定节点链接在一起可以使用头指针指向链的指定位置插入操作需要修改指针删除操作需要修改指针指向关系表的第一个节点指向关系面向对象编程初步类对象类是对象的蓝图,定义了对象的属性和行为类可以看作对象是类的实例,代表了真实世界中的实体对象拥有类是一种数据类型,它描述了具有相同属性和行为的一组对的属性和行为,并可以通过方法访问和修改属性,执行行象为类的定义与对象的创建class Car:def__init__self,brand,model:self.brand=brandself.model=modelcar=CarToyota,Corolla类的成员数据成员成员函数数据成员是类中用来存储数据的变量,它代表了对象的属成员函数是类中用来操作数据成员的函数,它代表了对象性数据成员可以是基本数据类型,也可以是自定义数据的行为成员函数可以通过self参数访问和修改对象的数类型据成员构造函数与析构函数构造函数析构函数构造函数是类的一个特殊函数,用于在创建对象时初始化析构函数是类的一个特殊函数,用于在对象被销毁时释放对象的属性构造函数的名称必须与类名相同,没有返回对象的资源析构函数的名称以双下划线开头和结尾,没值类型有返回值类型继承继承的概念继承的实现继承是指在一个类中使用另一个类的属性和行为,创建新在Python中,可以使用class语句实现继承子类可以通的类继承可以提高代码复用性,减少代码冗余过super函数调用父类的构造函数多态多态的概念多态的实现多态是指同一个方法可以根据对象的不同类型执行不同的在Python中,可以使用方法重写来实现多态子类可以操作多态可以提高代码灵活性和可扩展性重写父类的方法,提供不同的实现异常处理try:可能出现异常的代码块#except Exception:异常处理代码块#常用算法顺序查找二分查找顺序查找是一种简单的查找算法,它从数组的第一个元素二分查找是一种高效的查找算法,它要求数组必须是有序开始,依次比较每个元素,直到找到目标元素或遍历完整的二分查找每次将查找范围缩减一半,直到找到目标元个数组素或查找范围为空数据结构栈队列栈是一种后进先出LIFO的线性数据结构,类似于堆叠的队列是一种先进先出FIFO的线性数据结构,类似于排队盘子,最后放进去的盘子最先被取出来栈的操作包括的人,先排队的人最先被服务队列的操作包括入队入栈push和出栈pop enqueue和出队dequeue编程规范代码风格注释良好的代码风格可以提高代码的可读性和可维护性常见注释是用来解释代码的功能和逻辑,提高代码的可读性和的代码风格包括缩进、命名规范、注释等可维护性注释应该简洁明了,避免冗余和废话调试技巧断点调试日志记录12断点调试是指在程序执行日志记录是指将程序运行过程中设置断点,当程序过程中的重要信息记录到运行到断点时就会暂停,日志文件中,以便在程序可以查看变量的值、执行出现错误时可以查看日志,代码的流程等,帮助定位分析问题原因和解决程序错误打印输出3打印输出是指将程序运行过程中的关键变量的值打印到控制台,以便在程序出现错误时可以查看输出结果,分析问题原因常见错误与解决方法语法错误逻辑错误语法错误是指程序代码违反了逻辑错误是指程序代码的逻辑编程语言的语法规则,例如存在问题,导致程序无法正常缺少分号、括号不匹配等解执行,例如变量名错误、循决语法错误需要仔细检查代码,环条件错误等解决逻辑错误根据错误提示修改代码需要仔细分析代码,找到错误的逻辑,并进行修改运行时错误运行时错误是指程序运行过程中发生的错误,例如除零错误、数组越界等解决运行时错误需要查看错误提示信息,分析问题原因,并进行修改编程实践需求分析需求分析是指明确项目的需求,包括功能需求、性能需求、用户需求等需求分析是项目成功的关键,需要进行详细的调研和沟通设计设计是指将需求转化为具体的方案,包括系统架构设计、数据库设计、界面设计等设计阶段需要考虑系统的可扩展性、可维护性、安全性等因素编码编码是指根据设计方案编写程序代码编码阶段需要遵循编程规范,编写高质量的代码测试测试是指验证程序是否满足需求,包括单元测试、集成测试、系统测试等测试阶段需要发现并修复程序中的错误部署部署是指将程序部署到实际运行环境中,例如将网站部署到服务器上部署阶段需要确保程序能够正常运行维护维护是指在程序上线后,对程序进行更新、修复和优化维护阶段需要及时解决用户反馈的问题,保证程序的正常运行进一步学习资源总结与回顾123基础函数指针理解计算机工作原理,掌握基本数据类掌握函数定义、调用、参数传递、返回理解指针的概念,掌握指针的基本操作,型、运算符、控制语句、数组、字符串等值、作用域等函数相关知识并能运用指针访问和修改变量、数组等基础知识45结构体面向对象掌握结构体的定义、使用,以及结构体数理解面向对象编程的基本概念,掌握类、组、结构体指针等相关知识对象、继承、多态等面向对象特性。
个人认证
优秀文档
获得点赞 0