Python转C++的童鞋看这里

一、前言

        Python学完了,很多人都去学了C++。在学习C++之前,建议大家先打好基础,对C++和Python的区别先了解了解,会对后续的C++学习提供很大的帮助。

二、特点区分

1. Python

        Python是一种简单而高效的语言,它已经帮你封装好了很多函数,只要记一记函数名,就能做对所有题目。

2. C++

        C++是一种基础而高效的语言,它只给出一些基础的函数,需要牢固的底层逻辑,才能做对所有题目。

三、程序区分

1. 直观感受

        我们来看一个典型的题目:斐波那契数列的前 n 项。

  •  Python 典型的数组暴力求解

n = int(input())
f = [1, 1]
for i in range(2, n):f.append(f[i-1] + f[i-2])
print(" ".join(map(str, fib)))

  •  C++ 只用两个变量存储

#include <iostream>
using namespace std;int main()
{int n;cin >> n;cout << "1 1 ";long long a = 1, b = 1;for (long long i = 3; i <= n; i++){if (i % 2 == 1){a = a + b;cout << a << " ";}else{b = a + b;cout << b << " ";}}return 0;
}

        也许你感觉,天呐,C++也太复杂了。可是事实,并非如此。

2. 函数个数

        除了主函数、输入输出、for()、if()以外基础函数:

        Python用了整整 4个函数

        但是,C++一个函数都没有用。

四、基础知识,你需要掌握的

1. 安装Dev-cpp

        大致描述一下。

        1. Installer Language 选English

        2. License Agreement 选I Agree

        3. Choose Components 默认的OK,选Next>

        4. Choose Install Location 默认的OK,选Install

        5. Installing 等着,等到有Finish

        6. Dev-C++ first time configuration 选择English(Original)和Next>,点OK

        7. 未命名1 -- Dev-C++ 5.6.0 完美结束

2. 学习基础框架

#include <iostream>
// 这是必备的一个头文件(Python中的库),表示引入输入输出流和基本的运算操作using namespace std;
// 这表示使用标准的命名空间,我们能省则省,可以不用重复写std::int main()
// 这是主函数(Python中的main函数),所有执行的内容都写在这里{// 东西往这里堆return 0;// 这里表示返回0的值,也就是程序运行结束的标志}
// 这里用大括号相当于封装main()函数(Python中的:)

        C++唯一的好处,就是支持个人写法。在Python里,常用的个人写法可能只有运算符的空格吧?C++支持很多种写法,不如我们来看一看。

#include<iostream>
using namespace
std;int
main(){return
0;}

        这样程序也可以运行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/746906.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python-OpenCV-边缘检测

摘要&#xff1a; 本文详细介绍了Python-OpenCV的边缘检测技术&#xff0c;包括基础知识回顾、功能实现、技巧与实践、常见问题与解答等&#xff0c;为读者提供了全面深入的教程。 阅读时长&#xff1a;约60分钟 关键词&#xff1a;Python, OpenCV, 边缘检测, Canny, Sobel …

群晖 Synology Photos DSM7 自定义文件夹管理照片

背景 众所周知&#xff0c;目前群晖DSM7中使用Synology Photos做照片管理时&#xff0c;个人照片只能默认索引 /home/Photos 文件夹&#xff0c;但是如果个人照片很多或者用户很多时&#xff0c;共享文件夹/homes 所在的存储空间就会不够用 当然&#xff0c;如果你的存…

李彦宏“程序员将不再存在”言论被周鸿祎驳斥,网友怒怼:先把百度程序员都开除了

在 3 月 9 日央视的《对话》开年说节目上&#xff0c;百度创始人、董事长兼 CEO 李彦宏表示&#xff0c;基本上以后不会存在“程序员”这种职业了&#xff0c;因为只要会说话&#xff0c;人人都会具备程序员的能力。 “未来的编程语言只会剩下两种&#xff0c;一种叫做英文&am…

Python和RPA之间的区别和联系

Python是实现RPA的工具之一&#xff0c;且RPA要复杂的多&#xff0c;远不是会Python这么简单。 要理解RPA和Python的区别&#xff0c;先看它们各自做什么。 1、什么时候会用到RPA&#xff1f; 比如你的财务同事需要做财务对账&#xff0c;发票报销&#xff0c;税务申报等&…

【刷题训练】LeetCode125. 验证回文串

验证回文串 题目要求 示例 1&#xff1a; 输入: s “A man, a plan, a canal: Panama” 输出&#xff1a;true 解释&#xff1a;“amanaplanacanalpanama” 是回文串。 示例 2&#xff1a; 输入&#xff1a;s “race a car” 输出&#xff1a;false 解释&#xff1a;“rac…

C#常用数据操作方法详解

文章目录 C#常用数据操作方法详解字符大师&#xff1a;String类的使用艺术字符串截取&#xff1a;Substring示例寻找字符串&#xff1a;IndexOf示例字符串替换&#xff1a;Replace示例字符串分割&#xff1a;Split示例转小写&#xff1a;ToLower示例 数学机械师&#xff1a;Mat…

Java 设计模式系列:行为型-观察者模式

简介 观察者模式是一种行为型设计模式&#xff0c;又被称为发布-订阅&#xff08;Publish/Subscribe&#xff09;模式&#xff0c;它定义了对象之间的一对多依赖关系&#xff0c;当一个对象的状态发生改变时&#xff0c;所有依赖于它的对象都会得到通知并被自动更新。 观察者…

全面解析 Axios 请求库的基本使用方法

Axios 是一个流行的基于 Promise 的 HTTP 请求库&#xff0c;用于在浏览器和 Node.js 中进行 HTTP 请求。它提供了简单易用的 API&#xff0c;可以发送各种类型的请求&#xff08;如 GET、POST、PUT、DELETE等&#xff09;&#xff0c;并处理响应数据&#xff0c;Axios 在前端工…

MySQL常见的数据类型

一、数值型 5 种整型 tinyint、smallint、mediumint、int 和 bigint&#xff0c;主要区别就是取值范围不同&#xff0c;还可以在类型前添加一个 限制词 unsigned&#xff0c;不允许添加负数。 3 种浮点型&#xff1a;不能精确存放 float 和 double&#xff0c;可以精确存放 de…

朋友,代码库的“健身方案”要不要了解一下?

你有没有想过&#xff0c;你的代码库可能正面临“健康危机”—— 代码臃肿、低效交付、BUG隐藏、潜藏的安全风险…… “健身达人”上线 如果你的开发、安全和运维团队像是三位“健身达人”&#xff0c;那么极狐GitLab的DevSecOps线上成熟度评估&#xff0c;就是他们的“健身教…

09、用数据变量等控制 vue 项目标签中 CSS 样式的五种方法

通过 vue 中的变量值控制标签/组件样式 Ⅰ、通过 Vue3 的数据变量来控制 h1 标签样式&#xff1a;1、代码为&#xff1a;2、截图为&#xff1a; Ⅱ、通过 vue3 的 computed 来控制 h1 标签样式&#xff1a;1、代码为&#xff1a;2、截图为&#xff1a; Ⅲ、通过 vue3 的 comput…

MySQL gh-ost DDL 变更工具

文章目录 1. MDL 锁介绍2. 变更工具3. gh-ost 原理解析4. 安装部署5. 操作演示5.1. 重点参数介绍5.2. 执行变更5.3. 动态控制 6. 风险提示 1. MDL 锁介绍 MySQL 的锁可以分为四类&#xff1a;MDL 锁、表锁、行锁、GAP 锁&#xff0c;其中除了 MDL 锁是在 Server 层加的之外&am…

SpringBoot vue轮胎批发系统

SpringBoot vue轮胎批发系统 系统功能 首页 图片轮播 轮胎商品 评论 公告信息 搜索 购物车 立即购买 客服中心 登录注册 个人中心 我的订单 我的地址 我的收藏 后台管理 登录 个人中心 用户管理 轮胎分类管理 轮胎商品管理 公告信息管理 客服中心管理 轮播图管理 订单管理 …

Linux--基本知识入门

一.几个基本知识 终端: CtrlAltT 或者桌面/文件夹右键,打开终端切换为管理员: sudo su 退出:exit查看内核版本号: uname -a内核版本号含义: 5 代表主版本号;13代表次版本号;0代表修订版本号;30代表修订版本的第几次微调;数字越大表示内核越新. 二.目录…

Canny详解

Canny 边缘检测是一种经典的图像处理技术&#xff0c;被广泛应用于计算机视觉和图像处理领域。它由 John F. Canny 在 1986 年提出&#xff0c;是一种多阶段的边缘检测算法&#xff0c;具有高精度和低错误率的特点。 Canny 边缘检测的步骤&#xff1a; 高斯滤波&#xff08;Ga…

FreeRTOS学习第10篇--队列使用示例

FreeRTOS学习第10篇–队列使用示例 本文目标&#xff1a;FreeRTOS学习第10篇–队列使用示例 按照本文的描述&#xff0c;可以进行简单的使用队列。 本文实验条件&#xff1a;拥有C语言基础&#xff0c;装有编译和集成的开发环境&#xff0c;比如&#xff1a;Keil uVision5 …

【Java 并发】AbstractQueuedSynchronizer

1 AQS 简介 在同步组件的实现中, AQS 是核心部分, 同步组件的实现者通过使用 AQS 提供的模板方法实现同步组件语义。 AQS 则实现了对同步状态的管理, 以及对阻塞线程进行排队, 等待通知等一些底层的实现处理。 AQS 的核心也包括了这些方面: 同步队列, 独占式锁的获取和释放, 共…

手写vue将虚拟 Dom 转化为真实 Dom

vue将虚拟 Dom 转化为真实 Dom {tag: DIV,attrs:{id:app},children: [{tag: SPAN,children: [{ tag: A, children: [] }]},{tag: SPAN,children: [{ tag: A, children: [] },{ tag: A, children: [] }]}] }把上面虚拟Dom转化成下方真实Dom<div id"app"><sp…

做一个微信小程序需要什么条件?

在移动互联网时代&#xff0c;微信小程序已成为连接用户与服务的重要桥梁。它们无需下载安装&#xff0c;使用方便&#xff0c;功能强大&#xff0c;成为商家和开发者的新宠。如果你想要开发一个微信小程序&#xff0c;需要满足哪些条件&#xff1f; 一、开发小程序的基本条件…

Redis 持久化-RDB

RDB&#xff08;Redis DataBase&#xff09;&#xff0c;在指定的时间间隔内将内存中的数据集快照写入磁盘&#xff0c;也就是行话讲的Snapshot快照&#xff0c;它恢复时是将快照文件直接读到内存里。 Redis会单独创建&#xff08;fork&#xff09;一个子进程来进行持久化&…