c++入门1

工具

  1. Notepad++
  2. VS 2015开发人员命令提示符

特点轻量化,Notepad++可以写源代码,在VS 2015开发人员命令提示符可以进行编译、运行。

cd xxxxxx //进入源文件所在目录
cl xxx.cpp //在VS 2015开发人员命令提示符中编译源代码
xxx.exe //运行编译后的可执行文件

基础知识

循环语句

#include<iostream>int main()
{int sum = 0, val = 1;while (val <=10) //括号内表达式结果必须是bool或可以转换为bool{sum += val;++val;}std::cout<<"sum of 1 to 10 inclusive is "<< sum <<std::endl;int sumf = 0;for(int valf = 0; valf <= 10; ++valf){sumf += valf;}std::cout<<"sum of 1 to 10 inclusive is "<< sumf <<std::endl;return 0;
}

一个接收输入的程序:

#include<iostream>int main()
{int sum = 0, val = 0;while (std::cin >> val) //std是所有标准库的命名空间{sum += val;} //使用 ctrl + Z 来输入文件结束的符号std::cout<<"sum is: "<< sum <<std::endl;return 0;
}

如:

2
3
43
32
54
645
^Z
sum is: 779

数组

数组简介

数组中的操作

#include<iostream>
#include<stdio.h>
#include<algorithm> //包含sort函数
using namespace std;int main()
{//1. Initializationint a[5] = { 1, 2, 3 };  //other element will be set as the default value//2. Get Lengthint size = sizeof(a) / sizeof(*a); //sizeof用于获取变量或数据类型字节大小,不同机器结果不同//除以数组单个元素字节大小,可以得到数组长度cout << "The size of a1 is: " << size << endl;//3. Iterate all Elementscout << "The contents of a1 are:";for (int item : a)//在C++11中终于有基于范围的for循环(The range-based for statement)//在上面基于范围的for循环中,在item的定义之后,紧跟一个冒号(:),//之后直接写上需要遍历的表达式,for循环将自动以表达式返回的容器为范围进行迭代//这里在使用只读方式遍历容器{cout << " " << item;}cout << endl;// 4. Modify Elementa[0] = 4;// 5. Sort:需要头文件<algorithm>sort(a, a + size); //sort(begin, end, cmp),//其中begin为指向待sort()的数组的第一个元素的指针,//end为指向待sort()的数组的最后一个元素的下一个位置的指针,//cmp参数为排序准则,如果没有的话,默认以非降序排序。cout << "The contents of new a1 are:";for (int& item : a)//在遍历时修改容器中的值{cout << " " << ++item;}cout << endl;getchar();return 0;
}

动态数组简介

在 C++ 中的 vector,是内置的动态数组,其仍然是一个随机存取的列表数据结构,但大小是可变的。可以简单的认为,向量是一个能够存放任意类型的动态数组。其提供了在序列末尾相对快速地添加/删除元素的操作。
一道Leetcode题目:
在一个给定的数组nums中,总是存在一个最大元素 。
查找数组中的最大元素是否至少是数组中每个其他数字的两倍。
如果是,则返回最大元素的索引,否则返回-1。
提示:
nums 的长度范围在[1, 50].
每个 nums[i] 的整数范围在 [0, 100].

class Solution {
public:int dominantIndex(vector<int>& nums) {//需要两个整数变量,一个保存数组最大值元素,一个保存其索引int large = nums[0], index = 0, temp;//第一次遍历,找出最大值及其索引for(int i = 0; i < nums.size(); ++i){if (nums[i] > large){large = nums[i];index = i;}}//第二次遍历,将最大值与其它值比较for(int i = 0; i < nums.size(); ++i){if(i != index){temp = nums[i];if(large < 2 * temp)return -1;}}return index;}
};

一个更好的解法:
一次遍历找到最大的数max1和第二大的数max2,然后看看最大的数是不是大于等于第二大的数的两倍

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

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

相关文章

Redis数据存储解决方案

http://www.tuicool.com/articles/77nUZn 1、背景 1.1 Redis简介 官方网站&#xff1a; http://redis.io/ &#xff0c;Redis是REmote DIctionary Server的缩写。 Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库&#xff0c;并…

量子通信是不是伪科学?潘建伟这样回应

来源&#xff1a;科技日报“墨子号”发射快三年了&#xff0c;到底有什么新发现&#xff1f;量子通信和公众有什么关联&#xff0c;到底是不是伪科学&#xff1f;10日&#xff0c;在全国政协十三届二次会议举行的记者会上&#xff0c;全国政协委员、中国科学技术大学常务副校长…

AI如何设计,才能人类利益最大化?

来源&#xff1a;国机智能机器人曾为现代互联网早期协议和架构设计做出贡献的Vint Cerf&#xff0c;用一个寓言来解释为什么在人工智能等新兴技术出现后&#xff0c;勇敢的领导力至关重要。想象一下&#xff0c;你住在一个被群山环绕的山谷底部的小社区里。在远处的山顶上有一块…

每天收获

每天至少看一个demo代码&#xff0c;并且每天试着写出自己的demo。不能完全靠网上的代码蒙骗自己。 转载于:https://www.cnblogs.com/happywangjia/p/4319387.html

编译 | 5G时代的游戏世界:一年后的AR与VR将会发生的几个变化

来源&#xff1a;spectrum5G已不再是研发中的技术&#xff0c;它已经离我们非常的近&#xff0c;全球许多运营商都在都在部署这一新技术。那么我们可以从这个新一代无线系统中得到什么&#xff1f;不只是更好的智能手机服务。许多公司&#xff0c;比如德国电信&#xff0c;诺基…

《麻省理工科技评论》发布“21世纪迄今十大最糟科技”

来源&#xff1a;网络大数据必须承认&#xff0c;人类总会犯错&#xff0c;在科技的发展上也是一样。所以&#xff0c;当最新一期的《麻省理工科技评论》评出今天这份“ 2000-2019 年糟糕科技清单”时&#xff0c;你千万不要以为这是一件容易的事情。如果某项科技没有达到让人欣…

javascript Array对象

一&#xff0c;创建数组对象 JavaScript的数组支持了对任何数据类型的支持&#xff0c;并不会像java&#xff0c;C#那样指定了数组类型只能存储这种类型。 我们可以使用以下三种方法来创建JavaScript数组对象&#xff0c; 1&#xff0c;var arrnew Array(); 2 , var arrnew Arr…

67 亿美金搞个图,创建知识图谱的成本有多高你知道吗?

来源&#xff1a;算法与数学之美摘要&#xff1a;我们知道强大的深度模型需要很多计算力&#xff0c;那你知道创建一个知识图谱的成本到底是多少吗&#xff1f;德国 Mannheim 大学的研究者最近仔细估算了各种知识图谱每创建一条记录所需要的成本&#xff0c;他们表示对于大型知…

怎样修改MFC中应用程序标题的图标?

一、单文档中修改程序标题的图标 1. 切换到ResourceView视图&#xff0c;右键点击Icon&#xff0c;选择“import” ,导入图标(.ico)文件 2. 在CMainFrame中的OnCreate()函数中添加如下代码&#xff1a; //设置标题栏的图标 HICON m_hIcon AfxGetApp()->LoadIcon(IDI_ICON…

黄仁勋的“数据梦” 英伟达豪掷69亿美金虎口夺食

来源 &#xff1a; Bloomberg 编译&#xff1a;网易智能 晗冰3月12日消息&#xff0c;据国外媒体报道&#xff0c; 图形图像芯片制造商英伟达同意斥资69亿美元收购芯片制造商Mellanox&#xff0c;其欲通过此举大举进军不断增长的数据中心芯片市场。据悉&#xff0c;英伟达对Mel…

MFC制作简易音乐播放器

// MFC音乐播放器Dlg.cpp : implementation file // #include "stdafx.h" #include "MFC音乐播放器.h" #include "MFC音乐播放器Dlg.h" #include "Mmsystem.h" #include "Digitalv.h" #pragma comment(lib,"Winmm.lib&…

即使达到5级自动驾驶阶段,自动驾驶“卡车”也不可能完全“无人”

来源&#xff1a;IEEE编译&#xff1a;大数据文摘 李雷、周素云感谢Waymo和Uber等创业公司&#xff0c;让我们知道了无人驾驶汽车是怎么回事。这些汽车或卡车上配备了大量的传感器&#xff0c;并且依靠强大的计算能力使人们可以放心乘坐。愿景是美好的&#xff0c;但是却忽视了…

iOS 两种方法实现左右滑动出现侧边菜单栏 slide view

现在很多的APP中都有slide view&#xff0c;左右滑动出现侧边菜单栏的功能&#xff0c;Weico这个应用就有。网上有很多第三方的类库实现了这种效果&#xff0c;其实自己代码写的话也是很简单的&#xff0c;下面我将介绍两种方法实现slide view。---- 一种是用第三方类库IIViewD…

MFC中如何给对话框添加背景图片

定位到 void CXXXDlg::OnPaint()&#xff0c;在if()...else()中的else()下添加如下代码&#xff1a; else { //CDialog::OnPaint();//要禁止这个调用 CPaintDC dc(this); CRect rect; GetClientRect(&rect); CDC dcMem; dcMem.CreateCompatibleDC(&am…

孙正义万字访谈:AI是我现在唯一关注的事情,我是科技的绝对信徒

来源&#xff1a;腾讯科技科技变革丝毫没有减速&#xff0c;自动化就是科技的终极使命&#xff01;这是孙正义在最新采访中再次强调的理念。在接受CNBC超长采访中&#xff0c;软银创始人、千亿美元愿景基金掌舵者一再表示&#xff0c;AI能解决人类无法解决的问题&#xff0c;未…

Oracle 直方图理论

一.何为直方图 直方图是一种几何形图表&#xff0c;它是根据从生产过程中收集来的质量数据分布情况&#xff0c;画成以组距为底边、以频数为高度的一系列连接起来的直方型矩形图&#xff0c;如图所示 二.ORACLE 直方图 在Oracle中直方图是一种对数据分布情况进行描述的工具。它…

怎样把MySQL的编码方式改为utf8?

一、当我们安装好MySQL后&#xff0c;单击电脑开始&#xff0c;然后运行cmd&#xff0c;记得必须要用管理员的身份运行。然后输入net start mysql 前面操作如果忘记采用管理员身份运行的话&#xff0c;会出现系统访问错误。 二、修改MySQL的编码方式为utf8 1、找到默认MySQL的安…

strcpy_s与strcpy的比較

strcpy_s和strcpy()函数的功能差点儿是一样的。strcpy函数&#xff0c;就象gets函数一样&#xff0c;它没有方法来保证有效的缓冲区尺寸&#xff0c;所以它仅仅能假定缓冲足够大来容纳要拷贝的字符串。在程序执行时&#xff0c;这将导致不可预料的行为。用strcpy_s就能够避免这…

要更有钱、更烧钱,OpenAI 重组,加速融资之路

来源&#xff1a;AI 科技评论OpenAI 是一个非盈利性的 AI 组织&#xff0c;他们雇佣了许多一流的研究和开发人员&#xff0c;在机器学习理论和深度学习应用方面多有诸多成果&#xff0c;我们曾经报道过的许多强化学习连续控制成果、5v5 DOTA AI「OpenAI Five」、自动生成人类水…

MFC基于单文档制作吹彩色泡泡程序

1、代码如下&#xff1a; // 吹彩色泡泡Doc.h : interface of the CMyDoc class // /#if !defined(AFX_DOC_H__559CF0A7_41F7_48A5_A356_774764C0E60F__INCLUDED_) #define AFX_DOC_H__559CF0A7_41F7_48A5_A356_774764C0E60F__INCLUDED_#if _MSC_VER > 1000 #pragma once #e…