原文请訪问我的博客:http://xiaoshig.sinaapp.com/

向上取整

  1. 使用ceil函数。ceil(x)返回的是大于x的最小整数。如:
  2. ceil(2.5) = 3
  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(数组名,数组末地址。比較函数);

  比如:

  1. bool cmp(const int a,const int b)
  2. {
  3. return a<b;
  4. }
  5. 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 方法的使用方法。

  1. <pre name="code" class="cpp">function SubstrDemo()
  2.  
  3. { var s, ss; //声明变量。
  4. var s = "The rain in Spain falls mainly in the plain.";
  5. ss = s.substr(12, 5); //获取子字符串。
  6.  
  7. return(ss);
  8. //返回 "Spain"。
  1.  

查找字符串a是否包括子串b。

不是用strA.find(strB) > 0而是strA.find(strB) != string:npos

algorithm
简单使用方法

  1. #include "stdafx.h"
  2. #include <iostream>
  3. #include <vector>
  4. #include <algorithm>
  5. using namespace std;
  6.  
  7. int student_Score[] = { 50,80,93,23,66};
  8.  
  9. void pritit(int nScore)
  10. {
  11. cout<<nScore<<" ";
  12. }
  13. bool unPass(int nScore)
  14. {
  15. return nScore < 60;
  16. }
  17. bool Pass(int nScore)
  18. {
  19. return nScore >= 60;
  20. }
  21.  
  22. int main(int argc, char* argv[])
  23. {
  24. vector<int> v_score(student_Score,student_Score+sizeof(student_Score)/sizeof(int));
  25. vector<int>::iterator index;
  26. //排序
  27. sort(v_score.begin(),v_score.end());
  28. //显示
  29. for_each(v_score.begin(),v_score.end(),pritit); cout<<endl;
  30. //显示最小
  31. index = min_element(v_score.begin(),v_score.end());
  32. cout<<"最小分数 "<<*index<<endl;
  33. //显示最大
  34. index = max_element(v_score.begin(),v_score.end());
  35. cout<<"最大分数 "<<*index<<endl;
  36. //显示不低于60分的数量
  37. cout<<"低于60的数量 " <<count_if(v_score.begin(),v_score.end(),unPass)<<endl;
  38. //高于60的数量
  39. cout<<"高于60的数量 "<<count_if(v_score.begin(),v_score.end(),Pass)<<endl;
  40. //平均数
  41. int sum = 0;
  42. for (index = v_score.begin(); index != v_score.end(); index++)
  43. {
  44. sum += *index;
  45. }
  46. cout<<"平均数 "<<sum / v_score.size() <<endl;
  47.  
  48. return 0;
  49. }

学习中遇到的c++问题,持续更新的更多相关文章

  1. 值得学习的C/C++开源项目 持续更新

    值得学习的C语言开源项目 持续更新 文章目录 值得学习的C语言开源项目 持续更新 - 1. Webbench - 2. Tinyhttpd - 3. cJSON - 4. CMockery - 5. ...

  2. PHP 日常开发过程中的bug集合(持续更新中。。。)

    PHP 日常开发过程中的bug集合(持续更新中...) 在日常php开发过程中,会遇到一些意想不到的bug,所以想着把这些bug记录下来,以免再犯! 1.字符串 '0.00'.'0.0'.'0'  是 ...

  3. 【 js 基础 】【 源码学习 】源码设计 (持续更新)

    学习源码,除了学习对一些方法的更加聪明的代码实现,同时也要学习源码的设计,把握整体的架构.(推荐对源码有一定熟悉了之后,再看这篇文章) 目录结构:第一部分:zepto 设计分析第二部分:undersc ...

  4. Android中常用开发工具类—持续更新...

    一.自定义ActionBar public class ActionBarTool { public static void setActionBarLayout(Activity act,Conte ...

  5. Android开发中常用的库总结(持续更新)

    这篇文章用来收集Android开发中常用的库,都是实际使用过的.持续更新... 1.消息提示的小红点 微信,微博消息提示的小红点. 开源库地址:https://github.com/stefanjau ...

  6. k8s学习之资料参考网址(持续更新)

    此文章持续更新关于学习k8s生态的参考网址:  二进制方式搭建 (此部署方式是一步一步的部署,过程清晰)            https://github.com/opsnull/follow-me ...

  7. Linux 系统化学习系列文章总目录(持续更新中)

    本页内容都是本人系统化学习Linux 时整理出来的.这些文章中,绝大多数命令类内容都是翻译.整理man或info文档总结出来的,所以相对都比较完整. 本人的写作方式.风格也可能会让朋友一看就恶心到直接 ...

  8. 【Elasticsearch学习】DSL搜索大全(持续更新中)

    1.复合查询 复合查询能够组合其他复合查询或者查询子句,同时也可以组合各个查询的查询结果及得分,也可以从Query查询转换为Filter过滤器查询. 首先介绍一下Query Context和 Filt ...

  9. 基础学习:MYSQL命令大全(持续更新中---最近一次:2019.12.6)

    启动mysql : mysql -hlocalhost -uroot -p创建数据库:create database 数据库名字;指定要操作的数据库:use 数===据库名字;查看数据表建表语句:sh ...

  10. 学习makefile与autoconfig笔记,持续更新

    main.c #include<stdio.h> #include"chen_print.h" int main(int argc , char * argv ){ c ...

随机推荐

  1. linux 文件处理大杂烩

    1.对文件某行进行统计排序 awk  '{ printf "%-40s \n",$4}' /var/log/yum.log | sort | uniq -c | sort -nk ...

  2. .Net高级技术——程序集

    程序集(Assembly),可以看做是一堆相关类打一个包,相当于java中的jar包(*).打包的目的:程序中只引用必须的程序集,减小程序的尺寸:一些程序集内部的类不想让其他程序集调用. 我们调用的类 ...

  3. iOS Sprite Kit最新特性Physics Field虚拟物理场Swift測试

    在WWDC2014上,Sprite Kit又有了非常多新的提升! 当中一个非常有意思的东西就是Physics Field!也就是物理场! 这意味着我们在Sprite kit上编写虚拟物理场的游戏将变得 ...

  4. .NET:异常以及异常处理框架探析(转载)

    概述 一般情况下,企业级应用都对应着复杂的业务逻辑,为了保证系统的健壮,必然需要面对各种系统业务异常和运行时异常. 不好的异常处理方式容易造成应用程序逻辑混乱,脆弱而难于管理.应用程序中充斥着零散的异 ...

  5. jquery 根据name获取元素的问题

    我要获取name属性为test的元素 但是这个test是赋值给变量的 如var name='test'; 即要获取name属性为变量name的元素 请问jquery怎么写? $("input ...

  6. [Linux] Linux 守护进程的启动方法

    reference : http://www.ruanyifeng.com/blog/2016/02/linux-daemon.html "守护进程"(daemon)就是一直在后台 ...

  7. [PHP] ubuntu16.04下 Phpstorm发布项目到apache

    reference to : http://blog.csdn.net/qq_23937195/article/details/72953308 在网上找的不靠谱,倒腾了大半天的,终于找到正确姿势QA ...

  8. 借助 Resharper 和 StyleCop 让代码更整洁

    一:工具安装 Resharper 和 StyleCop 必须安装. Resharper 的配置文件如下:Resharper.zip 请按如下步骤导入, 1: 2: 3:   StyleCope 的配置 ...

  9. 10 Big Data Possibilities for 2017 Based on Oracle's Predictions

    2017 will see a host of informed predictions, lower costs, and even business-centric gains, courtesy ...

  10. 3D几何图形生成的DEMO

    3D几何图形生成的DEMO 可以生成以下几种图形: [1] 平面(Plane)图形的生成算法 [2] 立方体(Box)图形的生成算法 [3] 球(Sphere)图形的生成算法 [4] 圆锥(Cone) ...