跳转至

1、计算机基础与编程环境

1.【 1 】计算机的基本构成(CPU、内存、I/O 设备等)

计算机的基本构成通常包括以下几个方面:

  1. 中央处理器(CPU):负责执行指令、控制数据传输和运算等,是计算机的核心部件。目前市场上主流的 CPU 品牌主要有以下几个:Intel:成立于1968年,是一家全球领先的半导体芯片制造商。Intel生产各种类型的处理器,包括台式机、笔记本电脑、服务器和移动设备等。AMD:成立于1969年,是一家专门从事半导体设计和制造的公司。AMD生产各种类型的处理器,包括台式机、笔记本电脑、服务器和游戏设备等。ARM:成立于1990年,是一家以低功耗处理器为主打的公司。ARM的处理器广泛应用于智能手机、平板电脑、嵌入式系统和物联网设备等。Qualcomm:成立于1985年,是一家领先的半导体公司。Qualcomm专注于无线技术和移动芯片的研发,其处理器应用于各种移动设备、网络设备和服务。
  2. 内存(Memory):用于存储程序和数据,是计算机中非常重要的组成部分。内存大小通常以字节为单位来衡量。
  3. 输入/输出设备(I/O设备):包括键盘、鼠标、显示器、打印机、磁盘等,它们负责将用户的输入输出转换成计算机可以处理的数字形式的数据。
  4. 总线(Bus):将各种信息传输给各个硬件设备,是计算机内部各个部件之间的连接桥梁。
  5. 主板(Motherboard):连接并支持所有计算机组件的主要电路板。它也包含了存储器、总线、接口和其他集成电子元件。

这些组成部分共同工作,使计算机能够完成各种任务和运算。

2.【 1 】Windows、Linux 等操作系统的基本概念及其常见操作

操作系统是计算机系统中的一种重要软件,它负责协调和管理计算机硬件、软件和用户之间的交互。常见的操作系统有以下几种:

  1. Windows:由微软公司开发,是应用最广泛的个人电脑操作系统之一。
  2. macOS:由苹果公司开发,主要应用于苹果电脑和移动设备上。
  3. Linux:是一种免费且开放源代码的操作系统,广泛应用于服务器和嵌入式设备等领域。
  4. Android:由Google公司开发,主要应用于智能手机、平板电脑等移动设备上。
  5. iOS:也由苹果公司开发,主要应用于iPhone、iPad等移动设备上。
  6. Chrome OS:由Google公司开发,主要应用于Chromebook等基于云计算的设备上。
  7. FreeBSD:是一种免费的类Unix操作系统,广泛应用于服务器和网络设备等领域。
  8. Ubuntu:是一种基于Linux的免费操作系统,适合个人或企业级使用。

​ 除了以上列出的操作系统,还有很多其他的操作系统,例如Windows Server、Red Hat Enterprise Linux等。每个操作系统都有其特定的功能及适用场景,用户可以根据自己的需要选择相应的操作系统。

​ 下面简单介绍它们的基本概念及其常见操作:

​ 1.Windows:是由微软公司开发的一种个人电脑操作系统,包括Windows 7、Windows 8、Windows 10等多个版本,广泛应用于个人电脑、笔记本电脑和服务器等。常见的操作包括:

  • 开机、关机和重启操作
  • 文件管理和文件夹操作
  • 安装和卸载软件程序
  • 系统设置和配置
  • 网络设置和连接
  • 常用软件的使用,如浏览器、办公软件等

​ 2.Linux:是一种免费且开放源代码的操作系统,由Linus Torvalds于1991年开发。Linux支持各种类型的计算机硬件,包括个人电脑、服务器、嵌入式设备等,并广泛应用于大型企业和云计算平台。常见的操作包括:

  • 文件管理和目录操作
  • 系统设置和配置
  • 软件包管理和安装
  • 用户和权限管理
  • 网络设置和连接
  • 常用命令行工具的使用,如grep、awk等

​ 3.苹果系统,也称为Mac OS X或macOS,是由苹果公司开发的一种操作系统,主要应用于苹果电脑和移动设备上。它具有用户友好的、直观的图形用户界面,支持多任务处理、虚拟桌面、语音识别等功能。常见的操作包括:

  • Finder 文件管理器操作
  • 应用程序的打开和关闭
  • 多任务应用程序的切换
  • 系统设置和网络配置
  • 使用Siri语音助手实现语音控制
  • 使用iCloud进行文件同步与备份

3.【 1 】计算机网络和 Internet 的基本概念

​ 计算机网络是指将多台计算机通过通信设备和通信线路相互连接起来,实现信息交换和资源共享的系统。计算机网络可以按照规模分为局域网、城域网、广域网等不同类型。网络中的各个设备通过通信协议进行通信,而通信协议的制定和实现需要遵循特定的标准。

​ Internet 是全球最大的计算机网络,由无数台计算机通过互联网协议相互连接而成。Internet 使得全球各地的计算机和人们可以互相通信和交流,同时也提供了丰富的信息资源和服务。Internet 包含了许多互联网服务,例如电子邮件、万维网、文件传输协议等,这些服务都是在计算机网络的基础上实现的。

​ Internet 采用了分层的网络架构,其中每一层负责不同的功能,例如应用层、传输层、网络层、链路层等。这种分层的设计使得网络更加模块化,也更容易实现和维护。同时,Internet 也面临着许多安全和隐私的挑战,需要采取一系列的技术和措施来保护用户的信息和网络安全。

以下是计算机网络和Internet的一些基本概念:

  1. 协议:在计算机网络中,协议是指用于规范通信的规则和标准。例如,TCP/IP协议是Internet上的标准通信协议,HTTP协议是用于在Web上传输数据的协议。
  2. IP地址:在Internet上,每台计算机都必须拥有一个唯一的IP地址,以便能够互相通信。IP地址通常采用IPv4或IPv6格式,例如192.168.1.1。
  3. 域名:为了方便用户记忆和使用,计算机网络中还存在域名这一概念。域名是一个与IP地址相对应的人类可读的字符串,例如www.google.com。
  4. 网络拓扑:网络拓扑指网络中各个设备之间的连接关系。常见的网络拓扑有星型拓扑、总线拓扑、环形拓扑等。
  5. 传输介质:计算机网络中数据的传输需要一些物理介质来传递信号。常见的传输介质有双绞线、光纤、无线电波等。
  6. 网络安全:在计算机网络中,网络安全是一个非常重要的问题。网络安全包括数据加密、身份验证、防火墙、入侵检测等措施,以保证网络中的数据和资源不被非法访问和攻击。

4.【 1 】计算机的历史和常见用途

​ 计算机是一种以数字方式进行计算、存储和处理信息的电子设备。计算机历史可以追溯到数百年前的计算设备,但是真正的计算机始于20世纪初的机械计算机。以下是计算机历史的详细描述:

1.机械计算机时代(1623-1945)

​ 最早的计算设备可以追溯到17世纪的帕斯卡计算器,这是一种手动的机械计算设备,用于加、减、乘和除。在19世纪,查尔斯·巴贝奇设计了一种机械计算机——分析机,用于处理数学问题。分析机从未真正完工,但是巴贝奇的设计为后来的计算机奠定了基础。

​ 20世纪初,机械计算机开始出现商业市场上。最早的商业机械计算机是Tabulating Machine Company(后来的IBM)的产品,用于进行人口普查和工资计算等任务。接着,在二战期间,机械计算机被广泛用于军事目的,例如破解密码和计算弹道。

2.电子计算机时代(1945-现在)

​ 1945年,ENIAC(Electronic Numerical Integrator and Computer)诞生,它是世界上第一台电子计算机,由约翰·冯·诺伊曼设计。ENIAC用于进行科学计算,例如计算导弹弹道。然而,ENIAC的巨大体积和高昂的成本限制了它的使用。

​ 1951年,第一台商业电子计算机——UNIVAC(Universal Automatic Computer)问世。UNIVAC被用于进行商业和政府任务,例如选举预测和经济分析。从此以后,电子计算机逐渐普及,成为商业和科学计算的主要工具。

​ 1960年代,IBM开发了第一台大型计算机——System/360。System/360是可编程的,可以处理多个任务,并且具有向下兼容性,这意味着用户可以继续使用旧的软件和硬件。System/360的开发使得计算机成为了一个庞大的工业。

​ 1970年代,个人计算机开始出现。1971年,英特尔推出了第一款微处理器,这是一种集成了CPU的芯片。1975年,比尔·盖茨和保罗·艾伦开发了微软公司的第一款基于微处理器的操作系统——Altair BASIC,这是第一款面向个人计算机的操作系统。

​ 1980年代,个人计算机开始普及。IBM的PC(个人计算机)标准成为了行业标准,大量的人们开始使用个人计算机进行办公和娱乐活动。1990年代,互联网的发展使得计算机和人们之间的交流变得更加便利。随着网络技术和软件的不断发展,计算机已经成为了现代社会不可或缺的一部分,它在商业、科学、教育、娱乐等各个领域都有广泛的应用。

​ 总的来说,计算机历史的发展是一个漫长而又持续不断的过程,从最初的机械计算器到现在的高性能计算机和人工智能,计算机的发展经历了数百年的变革和创新。如今,计算机已经成为现代社会不可或缺的一部分,它在带给我们便利的同时也为我们提供了无限的可能性和挑战。

以下是几位计算机领域的著名科学家:

  1. 艾伦·图灵(Alan Turing):他是英国计算机科学家、数学家和逻辑学家,被称为“现代计算机科学之父”。他在第二次世界大战期间参与破解纳粹德国的密码,为盟军胜利做出了重要贡献。他还提出了“图灵测试”,这是一种测试人工智能的方法,至今仍然被广泛应用。

  2. 约翰·冯·诺伊曼(John von Neumann):他是匈牙利裔美国数学家和物理学家,被誉为计算机科学和数学的巨匠。他在计算机体系结构和计算机科学的许多领域做出了重要贡献,包括发明现代计算机的基本架构和运算方法。

  3. 蒂姆·伯纳斯-李(Tim Berners-Lee):他是英国的一名计算机科学家,也是万维网的发明者。他在1989年发明了万维网,并创建了第一个网页浏览器和网站。他被认为是现代计算机网络和互联网的创始人之一,也因此获得了许多奖项和荣誉。

  4. 阿兰·凯(Alan Kay):他是美国计算机科学家和教育家,被认为是“面向对象编程”的先驱之一。他是Smalltalk编程语言和Dynabook概念的创始人,这两个概念都对计算机科学和软件开发产生了深远的影响。

  5. 格雷斯·霍珀(Grace Hopper):她是美国的一名计算机科学家,被誉为“计算机编程之母”。她发明了第一个编译器,并为COBOL编程语言的发展做出了重要贡献。她还创造了许多编程术语和标准,如“bug”和“debugging”。

这些科学家对计算机科学和技术的发展做出了巨大的贡献,他们的研究成果和发明对于现代计算机科学和技术的发展产生了深远的影响。

计算机的常见用途:计算机在现代社会中应用广泛,包括但不限于以下领域:

  • 科学研究:计算机在物理、化学、生物、医学等科学领域中被广泛使用,加速了实验数据处理、模拟分析的速度与精度。
  • 工程设计:计算机辅助设计(CAD)和计算机辅助制造(CAM)技术已经被广泛应用于建筑、航空航天、汽车、机械等领域。
  • 商业金融:计算机在商业和金融领域中也被广泛应用,例如银行交易处理、股票交易、市场分析等。
  • 娱乐文化:计算机游戏、影视制作、音乐创作等娱乐文化领域也是计算机的重要应用领域。
  • 社会服务:计算机在政府管理、公共服务、教育培训等领域中也有着广泛应用,如计算机网络、电子政务、在线教育等。

5.【 1 】NOI 以及相关活动的历史

​ IOI,全称为“国际信息学奥林匹克竞赛”(International Olympiad in Informatics),是一项面向全球青少年的计算机科学竞赛。其主要目的是促进计算机科学和信息技术在青少年中的普及和发展,鼓励他们发掘自己的潜力并探索计算机科学领域的更深层次。

​ IOI竞赛始于1989年,由保加利亚、苏联、捷克斯洛伐克、波兰和东德五个国家的代表在保加利亚首都索菲亚举行。此后,每年都会有数十个国家和地区的代表参加该竞赛。IOI的竞赛项目包括算法和程序设计,涉及诸多计算机科学领域,如图论、数据结构、动态规划、贪心算法等。

​ NOI及其相关活动为青少年提供了一个展示自己技能和才能的平台,也为全球青少年之间的交流和合作创造了良好的机会。同时,NOI也推动了计算机科学和技术的普及和发展,为人们的日常生活和社会发展提供了重要的支持和帮助。

NOI:1984年邓小平指出:“计算机的普及要从娃娃做起。”中国计算机学会于1984年创办全国青少年计算机程序设计竞赛(简 称:NOI),即全国青少年信息学奥林匹克竞赛,是国内包括港澳在内的省级代表队最高水平的大赛。

NOIP:全国青少年信息学奥林匹克联赛(National Olympiad in Informatics in Provinces简称NOIP)自1995年至今。每年由中国计算机学会统一组织。NOIP在 同一时间、不同地点以各省市为单位由特派员组织。全国统一大纲、统一试卷。初、高中或其他中等专业学校的学生可报名参加联赛。联赛分初赛和复赛 两个阶段。初赛考察通用和实用的计算机科学知识,以笔试为主。复赛为程序设计,须在计算机上调试完成。参加初赛者须达到一定分数线后才有资格参加复赛。联赛分普及组和提高组两个组别,难度不同,分别面向初中和高中阶段的学生。

​ 从2005年开始,NOIP不再支持Basic;从2022年开始不再支持Pascal,只有C++。

冬令营:全国青少年信息学奥林匹克冬令营(简称冬令营)自1995年起。每年在寒假期间开展为期一周的培训活动。冬令营共8天,包括授课、 讲座、讨论、测试等。参加冬令营的营员分正式营员和非正式营员。获得NOI前20名的选手和指导教师为正式营员,非正式营员限量自愿报名参加。在冬令营授课的是著名大学的资深教授及已获得国际金牌学生的指导教师。

APIO: 亚洲与太平洋地区信息学奥赛(Asia Pacific Informatics Olympiad)简称(APIO)2007年创建,该竞赛为区域性的网上准同步赛,是亚洲和太平洋地区每年一次的国际性赛事,旨在给青少年提供更多的赛 事机会,推动亚太地区的信息学奥林匹克的发展。APIO每年5月举行,由不同的国家轮流主办。每个参赛团参赛选手上限为100名,其中成绩排在前6名的选 手作为代表该参赛团的正式选手统计成绩。APIO中国赛区由中国计算机学会组织参赛,获奖比例将参照IOI。

选拔赛:选拔参加国际信息学奥林匹克中国代表队的竞赛(简称选拔赛)。IOI的选手是从获NOI前20名选手中选拔出来的,获得前4名的优胜者代表中国参加国际竞赛。选拔科目包括:NOI成绩、冬令营成绩、论文和答辩、平时作业、选拔赛成绩、口试。上述项目加权产生最后成绩。

IOI: 出国参加国际信息学奥林匹克竞赛(International Olympiad in Informatics)简称(IOI)。由中国计算机学会组织代表队,代表中国参加国际每年一次的IOI。中国是IOI创始国之一。IOI2000由中国主办,CCF承办。出国参赛得到中国科协和国家自然科学基金委的资助。  

​ 自1989年开始,我国在NOI(网上同步赛99年开始)、NOIP、冬令营、选拔赛的基础上,组织参加国际信息学奥林匹克(IOI)竞赛。十几年中选拔75人次参加了 IOI,累计获金牌46块、银牌17块,铜牌12块。这些选手不仅在国际大赛中有好的表现,而且在现代的信息学科上也大展才华。中国已成为世界公认的信息 学奥林匹克竞赛强国,参赛选手、领队、教练曾受到江泽民、李鹏、李岚清等党和国家领导人及著名科学家的亲切接见和赞扬。

CCSP:大学生计算机系统与程序设计竞赛,由中国计算机学会(CCF)于2016年发起的一个面向大学生的竞赛,每年举办一次,考察的是算法、编程以及计算机系统设计能力,旨在进一步提高计算机教育质量,使学生通过竞赛进一步学习和掌握计算机系统知识,同时对高校计算机教育产生引领作用。

CSP:中国计算机学会于2014年推出CCF计算机软件能力认证,该项认证重点考察软件开发者实际编程能力,由中国计算机学会统一命题、统一评测,委托各地设立的考试机构进行认证考试。该项认证每年大约3、9、12月各举办一次。认证者不限年龄,不限学历,不限报考次数,不限国籍 ,在报名官网注册账户后均可报名参加认证。语言:C/C++(Dev-CPP 5.4.0 (Min GW 4.7.2)),Java(Eclipse (Java SDK 1.7.0_15)),Python(3.6.5) 浏览器:Chrome。CSP认证考试可以带纸质资料进入考场,不过只能是常用语言的程序设计基础书、数据结构的相关书籍。不允许U盘、手机等电子设备进入考场。

CSP-S/J:CCF非专业级软件能力认证(Certified Software Professional Junior/Senior,简称CSP-J/S)创办于2019年,是由CCF统一组织的评价计算机非专业人士算法和编程能力的活动。在同一时间、不同地点以各省市为单位由CCF授权的省认证组织单位和总负责人组织。全国统一大纲、统一认证题目,任何人均可报名参加。CSP-J/S分两个级别进行,分别为CSP-J(入门级,Junior)和CSP-S(提高级,Senior),两个级别难度不同,均涉及算法和编程。CSP-J/S分第一轮和第二轮两个阶段。第一轮考察通用和实用的计算机科学知识,以笔试为主,部分省市以机试方式认证。第二轮为程序设计,须在计算机上调试完成。第一轮认证成绩优异者进入第二轮认证,第二轮认证结束后,CCF将根据CSP-J/S各组的认证成绩和给定的分数线,颁发认证证书。CSP-J/S成绩优异者,可参加NOI省级选拔,省级选拔成绩优异者可参加NOI。

6.【 1 】NOI 以及相关活动的规则

官方网站:http://www.noi.cn

7.【 1 】位、字节与字

进制的基本概念:

​ 进制是一种数的表示方式,用于表示数字在计算机中的存储和运算。在计算机中,二进制是最基本的进制方式,常用的还有十进制、八进制和十六进制。每种进制有其独特的表示方法和规则。

​ 二进制是计算机最基本的进制方式,只包含数字0和1,是所有计算机数据的基本形式。八进制和十六进制是二进制的衍生进制,能够更方便地表示和操作二进制数据。十进制是人类最熟悉的进制方式,我们平时使用的数字就是十进制。

进制转换:

​ 进制转换是指将一个进制的数转换为另一个进制的数。常用的是二进制、八进制、十进制和十六进制之间的转换。具体的转换方法可以用除法取余法、乘法加减法等方式实现。

​ 例如,将十进制数12转换为二进制数,可以使用除法取余法,即将12除以2,得到商6和余数0,再将商6除以2,得到商3和余数0,继续将商3除以2,得到商1和余数1,最后将商1和余数1组成二进制数1100,即为12的二进制表示。

字节和字:

​ 字节是计算机中存储数据的最小单位,通常由8位二进制数构成,可以存储一个字符或一个二进制数。字节的缩写是B,常用的单位有千字节(KB)、兆字节(MB)、吉字节(GB)等(210 = 1024)。

​ 字是计算机中数据存储的单位,通常由多个字节组成。在不同的计算机架构中,一个字的长度可以不同,例如16位计算机中一个字为2个字节,32位计算机中一个字为4个字节。字的缩写是W,常用的单位有千字(KW)、兆字(MW)等。

位:

​ 位是计算机处理和存储信息的基本单位,是计算机能够识别和处理数字的基础。计算机中所有的数据都以二进制位的形式进行存储和运算,例如字符、图像、声音等都是以二进制位的形式存储的。位的取值只有0和1两个,代表了开关的开和关,计算机能够根据这两个状态进行运算和判断。

​ 在计算机中,位通常用来表示电子开关的状态。电子开关只有两个状态,分别是开和关,也就是可以用0和1来表示。计算机内部的运算和逻辑判断都是通过对位进行操作来实现的。

位的运算和处理:

​ 计算机能够对位进行不同的运算和处理,包括位的与、或、异或、取反、左移、右移等操作。其中,位的与、或、异或是逻辑运算,取反、左移、右移是移位运算。这些运算和处理方式能够实现各种复杂的计算和数据处理操作,例如加减乘除、比较大小、逻辑判断等。

​ 总之,位作为计算机处理和存储信息的最小单位,是计算机能够识别和处理数字的基础。位的运算和处理方式能够实现各种复杂的计算和数据处理操作,是计算机内部运行的基础。

原码、反码、补码、移码:

​ 原码、反码、补码、移码都是二进制数的表示方法,常见于计算机中对二进制数的运算、存储和传输。

  • 原码是最基本的表示方法,将一个数的符号位和数值部分分别表示在不同位数的二进制数中。例如,一个 8 位二进制数中,第一位表示符号,后面 7 位表示数值。+7 的原码为 00000111,-7 的原码为 10000111。
  • 反码是对原码的一种修改,将正数的反码与原码相同,而负数的反码则将数值部分按位取反。例如,+7 的反码与原码相同为 00000111,-7 的反码为 11111000。
  • 补码是对反码的一种修改,将正数的补码与原码相同,而负数的补码则将数值部分按位取反,并在最后一位加 1。例如,+7 的补码与原码相同为 00000111,-7 的补码为 11111001。
  • 移码是一种将补码的符号位与数值部分都向左移动一个位置,再在最右侧补 0 的表示方法。

​ 移码是一种数值表示方法,它在计算机科学中有广泛应用。在移码表示法中,数值用两部分来表示,一部分是符号位,另一部分是数值部分。符号位用来表示数值的正负,而数值部分用来表示数值的大小。

​ 移码的表示方法与二进制补码类似,只不过它将最高位的符号位取反,用于表示正负。具体来说,移码表示法中,正数的符号位为0,负数的符号位为1,数值部分与二进制补码相同。

​ 移码的优点在于,可以使计算机更容易处理符号数值的加减运算。在移码表示法中,数值的加减运算可以通过计算机的硬件电路来完成,不需要使用软件算法进行转换。这样可以提高计算速度和精度,同时也减少了硬件电路的复杂性。

​ 不过,移码表示法的缺点是它的符号位可能会引起一些问题,例如当数值发生溢出时。在移码表示法中,数值的加减运算可能会导致符号位发生改变,从而影响数值的正确性。因此,在使用移码表示法时,需要注意一些细节问题。

​ 在计算机中,通常使用补码表示有符号整数,因为补码具有唯一的表示,且可以用相同的运算规则处理正数和负数。

8.【 1 】程序设计语言以及程序编译和运行的基本概念

​ 程序设计语言是一种用于编写计算机程序的语言,可以通过编写程序来实现计算机所需的各种功能。程序设计语言可以按照不同的分类标准进行分类,例如根据语言的抽象级别、应用领域、语言的类型等。下面是程序设计语言的一些常见分类:

  1. 根据语言的抽象级别

  2. 低级语言:包括汇编语言和机器语言,直接面向计算机硬件,控制能力强,但易于出错。

  3. 高级语言:抽象程度较高,使用自然语言和符号来描述程序,例如C、Java、Python、Ruby等。

​ 高级语言是指使用自然语言(如英语)和符号来描述计算机程序的语言,例如C、Java、Python等。这些语言可以提高程序员的工作效率,因为它们更接近于人类的自然语言,程序员可以更快速、更准确地编写出复杂的程序。而低级语言则更接近于计算机底层的机器语言,例如汇编语言,这些语言更难学习和使用,但是可以更直接地控制计算机的硬件资源。

  1. 根据应用领域

  2. 通用语言:可以用于各种不同领域的应用,例如C、Java等。

  3. 领域特定语言(Domain-Specific Language,DSL):针对某个具体领域设计的语言,例如SQL(用于关系数据库操作)、HTML(用于网页开发)等。

  4. 根据语言的类型

  5. 编译型语言:编写的程序需要先经过编译器编译,生成可执行程序,例如C、C++等。

  6. 解释型语言:程序在运行时才会被逐行解释执行,例如Python、Ruby等。

  7. 根据语言的范式

  8. 过程式语言:以过程为基本单位,程序由一组过程构成,例如C语言。

  9. 面向对象语言:以对象为基本单位,程序由一组对象构成,例如Java、Python等。
  10. 函数式语言:函数是基本单位,程序由一组函数构成,例如Lisp、Haskell等。

​ 程序编译是指将高级语言编写的程序转化为机器语言的过程,编译器是实现这一过程的程序。编译器会将高级语言代码翻译成机器语言代码,然后将机器语言代码存储到计算机的内存中,让计算机能够直接运行。

​ 程序运行是指计算机根据编译器生成的机器语言代码执行程序的过程。在程序运行的过程中,计算机会按照机器语言代码指定的步骤进行运算和处理,最终实现程序的功能。

​ 编写程序的基本流程包括:分析问题,设计算法,选择合适的程序设计语言,编写程序,编译程序,运行程序,调试和测试程序,最终发布和使用程序。

9.【 1 】使用图形界面新建、复制、删除、移动文件或目录

在 Windows 操作系统中,使用图形界面进行新建、复制、删除、移动文件或目录的方法如下:

  1. 新建文件夹:在需要创建新文件夹的文件夹窗口中,右键单击空白处,选择“新建” -> “文件夹”,然后输入文件夹名称即可。
  2. 复制文件或目录:选中需要复制的文件或目录,右键单击,选择“复制”或使用快捷键 Ctrl+C。然后打开目标位置,右键单击空白处,选择“粘贴”或使用快捷键 Ctrl+V。
  3. 删除文件或目录:选中需要删除的文件或目录,右键单击,选择“删除”或使用快捷键 Delete。系统会提示是否确认删除,点击“是”即可。
  4. 移动文件或目录:选中需要移动的文件或目录,右键单击,选择“剪切”或使用快捷键 Ctrl+X。然后打开目标位置,右键单击空白处,选择“粘贴”或使用快捷键 Ctrl+V。

​ 以上操作都可以通过鼠标右键菜单实现,也可以使用快捷键来完成。另外,在不同的操作系统和文件管理器中,具体的操作方式可能略有差异,请根据实际情况进行操作。

10.【 1 】使用 Windows 系统下的集成开发环境 ( 例如 Dev C++ 等 )

​ 以下是使用 Windows 系统下的集成开发环境 Dev C++ 的步骤:

  1. 下载并安装 Dev C++:可以在官方网站(https://sourceforge.net/projects/orwelldevcpp/)下载最新版本的 Dev C++,然后进行安装。
  2. 新建项目:打开 Dev C++,点击“文件”->“新建”->“项目”,选择需要创建的项目类型(如 Console Application),然后设置项目名称和保存路径,点击“确定”。
  3. 编写代码:在 Dev C++ 中编辑器窗口中输入代码,并保存。
  4. 编译程序:点击“编译”->“编译当前文件”(或使用快捷键 F9),Dev C++ 会将代码转换为可执行文件。
  5. 运行程序:点击“运行”->“运行当前项目”(或使用快捷键 Ctrl+F10),就可以运行程序了。

​ 以上是使用 Dev C++ 开发 C/C++ 程序的基本步骤,具体的操作可能因版本不同而略有差异。开发环境提供了许多辅助功能,例如代码自动补全、调试器等,可以大幅提高开发效率。如果遇到问题,可以查看 Dev C++ 的帮助文档或在论坛上寻求帮助。

11.【 1 】使用 Linux 系统下的集成开发环境 ( 例如 Code::Blocks 等 )

以下是使用 Linux 系统下的集成开发环境 Code::Blocks 的步骤:

  1. 安装 Code::Blocks:在终端中输入 sudo apt-get install codeblocks 命令,安装 Code::Blocks。
  2. 新建项目:打开 Code::Blocks,点击“文件”->“新建”->“项目”,选择需要创建的项目类型(如 Console Application or Empty Project),然后设置项目名称和保存路径,点击“创建”。
  3. 编写代码:在 Code::Blocks 的编辑器窗口中输入代码,并保存。
  4. 编译程序:点击“Build”->“Build”(或使用快捷键 F9),Code::Blocks 会将代码转换为可执行文件。
  5. 运行程序:点击“Build”->“Run”(或使用快捷键 F10),就可以运行程序了。

​ 以上是使用 Code::Blocks 开发 C/C++ 程序的基本步骤,具体的操作可能因版本不同而略有差异。Code::Blocks 提供了许多辅助功能,例如代码自动补全、调试器等,可以大幅提高开发效率。如果遇到问题,可以查看 Code::Blocks 的帮助文档或在论坛上寻求帮助。

12.【 1 】g++、gcc 等常见编译器的基本使用

以下是 g++、gcc 等常见编译器的基本使用方法:

  1. 安装编译器:在 Linux 下安装 g++ 或 gcc 编译器的方法是,在终端中输入 sudo apt-get install g++ (或 gcc)命令,即可安装。
  2. 新建源代码文件:在工作目录下新建一个文本文件,输入 C/C++ 代码,并将其保存为 .c 或 .cpp 文件。
  3. 编译源代码:在终端中输入 g++ filename.cpp -o output(或 gcc filename.c -o output) 命令,其中 filename 是源代码文件名,output 是输出文件名。这个命令将会把源代码文件编译为可执行文件,并将其保存为一个名为 output 的文件。
  4. 运行程序:在终端中输入 ./output 命令,即可运行编译后的程序。
  5. 使用其他编译选项:可以使用不同的编译选项来控制编译过程。例如,-Wall 选项可以开启所有警告信息的显示,-O2 选项可以开启优化等级为 2,-g 选项可以添加调试信息。在命令行中使用这些选项时,通常将它们放在编译命令的结尾。

​ 以上是 g++、gcc 等编译器的基本使用方法。由于不同的操作系统和编译器版本可能有所不同,因此具体的操作可能略有差异。如果遇到问题,可以查看编译器的帮助文档或在论坛上寻求帮助。