学习中遇到的c++问题,持续更新
原文请訪问我的博客:http://xiaoshig.sinaapp.com/
向上取整
使用ceil函数。ceil(x)返回的是大于x的最小整数。如:
ceil(2.5) = 3
ceil(-2.5) = -2
sort排序头文件
#include <algorithm>
数组初始化总结
整型数组初始化://仅仅能赋值0,赋其它值用memset(a,要赋的值,sizeof(a));
char a[3][4]={0};
字符数组初始化:
int b[3][4]={0};
布尔型数组初始化:
bool c[5]={0};
结构体初始化:
struct instruction{ //定义结构体,存储指令
int head; //识别指令
int d;
int n; //指令附加内容
}pro[1000]={0}; //存储程序体,相当于RAM
初始化之后都会变成0。
(char数组变为\000,int数组变为0,bool数组变为false,这个样例里的结构体全部元素的每个成员值都为0)
sort()函数的使用
sort()和qsort()一样,都是对数组的指定部分排序。qsort()仅仅使用了快排。sort()使用了混合排序。相比之下,sort()更快一些。
sort()函数经常使用的有两种形式,两个參数的形式,和三个參数的形式。
1、两參数:sort(数组名。数组末地址); //比如:sort(a+1,a+n+1);就是对a[1]...a[n+1]进行排序。默认是升序排序。假设想改变排序顺序,须要另写一个比較函数
2、三參数:sort(数组名,数组末地址。比較函数);
比如:
bool cmp(const int a,const int b)
{
return a<b;
}
sort(a+1,a+10+1,cmp);
就是对a[1]...a[n+1]进行从大到小排序。
string类库
substr 方法
返回一个从指定位置開始的指定长度的子字符串。 stringvar.substr(start [開始的数, length ]) 參数 stringvar 必选项。
要提取子字符串的字符串文字或 String 对象。 start 必选项。
所需的子字符串的起始位置。
字符串中的第一个字符的索引为 0。 length 可选项。
在返回的子字符串中应包含的字符个数。 说明 假设 length 为 0 或负数。将返回一个空字符串。假设没有指定该參数,则子字符串将延续到
stringvar 的最后。
演示样例 以下的演示样例演示了substr 方法的使用方法。
<pre name="code" class="cpp">function SubstrDemo()
{ var s, ss; //声明变量。
var s = "The rain in Spain falls mainly in the plain.";
ss = s.substr(12, 5); //获取子字符串。
return(ss);
//返回 "Spain"。
查找字符串a是否包括子串b。
不是用strA.find(strB) > 0而是strA.find(strB) != string:npos
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std; int student_Score[] = { 50,80,93,23,66}; void pritit(int nScore)
{
cout<<nScore<<" ";
}
bool unPass(int nScore)
{
return nScore < 60;
}
bool Pass(int nScore)
{
return nScore >= 60;
} int main(int argc, char* argv[])
{
vector<int> v_score(student_Score,student_Score+sizeof(student_Score)/sizeof(int));
vector<int>::iterator index;
//排序
sort(v_score.begin(),v_score.end());
//显示
for_each(v_score.begin(),v_score.end(),pritit); cout<<endl;
//显示最小
index = min_element(v_score.begin(),v_score.end());
cout<<"最小分数 "<<*index<<endl;
//显示最大
index = max_element(v_score.begin(),v_score.end());
cout<<"最大分数 "<<*index<<endl;
//显示不低于60分的数量
cout<<"低于60的数量 " <<count_if(v_score.begin(),v_score.end(),unPass)<<endl;
//高于60的数量
cout<<"高于60的数量 "<<count_if(v_score.begin(),v_score.end(),Pass)<<endl;
//平均数
int sum = 0;
for (index = v_score.begin(); index != v_score.end(); index++)
{
sum += *index;
}
cout<<"平均数 "<<sum / v_score.size() <<endl; return 0;
}
学习中遇到的c++问题,持续更新的更多相关文章
- 值得学习的C/C++开源项目 持续更新
值得学习的C语言开源项目 持续更新 文章目录 值得学习的C语言开源项目 持续更新 - 1. Webbench - 2. Tinyhttpd - 3. cJSON - 4. CMockery - 5. ...
- PHP 日常开发过程中的bug集合(持续更新中。。。)
PHP 日常开发过程中的bug集合(持续更新中...) 在日常php开发过程中,会遇到一些意想不到的bug,所以想着把这些bug记录下来,以免再犯! 1.字符串 '0.00'.'0.0'.'0' 是 ...
- 【 js 基础 】【 源码学习 】源码设计 (持续更新)
学习源码,除了学习对一些方法的更加聪明的代码实现,同时也要学习源码的设计,把握整体的架构.(推荐对源码有一定熟悉了之后,再看这篇文章) 目录结构:第一部分:zepto 设计分析第二部分:undersc ...
- Android中常用开发工具类—持续更新...
一.自定义ActionBar public class ActionBarTool { public static void setActionBarLayout(Activity act,Conte ...
- Android开发中常用的库总结(持续更新)
这篇文章用来收集Android开发中常用的库,都是实际使用过的.持续更新... 1.消息提示的小红点 微信,微博消息提示的小红点. 开源库地址:https://github.com/stefanjau ...
- k8s学习之资料参考网址(持续更新)
此文章持续更新关于学习k8s生态的参考网址: 二进制方式搭建 (此部署方式是一步一步的部署,过程清晰) https://github.com/opsnull/follow-me ...
- Linux 系统化学习系列文章总目录(持续更新中)
本页内容都是本人系统化学习Linux 时整理出来的.这些文章中,绝大多数命令类内容都是翻译.整理man或info文档总结出来的,所以相对都比较完整. 本人的写作方式.风格也可能会让朋友一看就恶心到直接 ...
- 【Elasticsearch学习】DSL搜索大全(持续更新中)
1.复合查询 复合查询能够组合其他复合查询或者查询子句,同时也可以组合各个查询的查询结果及得分,也可以从Query查询转换为Filter过滤器查询. 首先介绍一下Query Context和 Filt ...
- 基础学习:MYSQL命令大全(持续更新中---最近一次:2019.12.6)
启动mysql : mysql -hlocalhost -uroot -p创建数据库:create database 数据库名字;指定要操作的数据库:use 数===据库名字;查看数据表建表语句:sh ...
- 学习makefile与autoconfig笔记,持续更新
main.c #include<stdio.h> #include"chen_print.h" int main(int argc , char * argv ){ c ...
随机推荐
- 小程序获取当前页面路径url
getCurrentPages()[0].route
- Node.js学习笔记(1) - Node.js简介
近期在看一些Node.js的知识,看完后觉得,一些前面的东西忘记了,于是整理一下,方便自己查阅,也希望对学习Node.js的朋友有些帮助: 当然以下只是我个人的观点和理解,不喜勿喷,也望大神指教. 一 ...
- 华为S5300系列交换机V100R006SPH019升级补丁
S5300_V100R006SPH019.pat 附件: 链接:https://pan.baidu.com/s/1M1S5amGGViUieSp8lJ9psw 密码:sexx
- How do I use Tasker to run a sync in FolderSync?
First of all the full version is required. The full version works as a Tasker plugin - when you ...
- FolderSync文件夹同步
FolderSync是一款支持各大国外网盘同步的软件,目前支持 SkyDrive, Dropbox, SugarSync, Ubuntu One, Box.net, LiveDrive, HiDriv ...
- C#遍历系统所安装的打印机,使用WMI方式获取打印机的所有属性
有网友发消息来询问,C#如何遍历系统已经安装的所有打印机,并获得每个打印机的相关信息,如:端口,名称等等 C#里面,虽然在 System.Drawing.Printing 这个namespace下,提 ...
- arcgis python 沿线生成点
# coding: utf-8 """ Source Name: generatepointsfromlines.py Version: ArcGIS 10.4/Pro ...
- Linux学习杂记
近期一口气看完了韩顺平老师讲的Linux视频教程,自己也在学习的过程中做了些笔记,记载例如以下.希望帮助到一些喜欢研究Linux的同学.也算是在云端备份一下笔记吧.以免电脑出现不可控的因素而遗失自己的 ...
- 数据库实例: STOREBOOK > 表空间 > 编辑 表空间: TEMP
ylbtech-Oracle:数据库实例: STOREBOOK > 表空间 > 编辑 表空间: TEMP 表空间 > 编辑 表空间: TEMP 1. 一般信息返回顶部 1 ...
- WhyEngine游戏合集2014贺岁版
WhyEngine游戏合集2014贺岁版 自去年9月份开始写我的第一个小游戏,到现在为止,共实现了14个小游戏,10个屏保程序,7个DEMO程序.开发环境是VS2008,渲染使用的是D3D,所有代码都 ...