1. 输入输出

1)控制符

2) 如果要读取所有输入的字符,包括空格和回车,可以有如下两种方法,其中EOF在windows里默认是 ctrl+Z

注:输入字符时,scanf不会跳过空格,输入其他类型数据时会跳过空格。但是cin会跳过空格。

#include <iostream>
using namespace std;
int main(){
    int a;
    while((a = cin.get()) != EOF){
        cout << (char)a;
    }
    char c;
    while(scanf("%c",&c) != EOF){
        printf("%c",c);
    }
    ;
}

3)cin/cout比scanf/printf速度慢,因此数据量比较大时推荐使用后者。此外在一个程序里不建议同时使用cin和scanf,或者同时使用cout和printf。

4)freopen重定向输入:用于调试程序时避免手动输入测试数据

注:1.文件路径的输入用到了\\而不是\,是因为字符串的输入中要输入\就得在前面加个\;2.while(cin>>n) 这里也可以用while(scanf("%d",&n) == 1),对于scanf来说,返回值为输入变量的数目,对于cin来说,返回值为是否按要求输入了所有的变量(即0和1),停止输入可输入ctrl+Z。

2. 加减乘运算

1)以操作数中精度高的类型为准,其中

double>long long>int>short>char

2)运算溢出

溢出的部分直接丢弃,举例如下。解决溢出的方法就是使用更高精度的数据类型。

3. 运算符优先级

 4. switch

switch语句在进入某个case分支后,会一直执行到第一个碰到的break,即使这个break是在后面的case 分支中,直到swith语句末尾的}。举例如下

 5.数组

注:1.数组一般不要定义在main里面;2.数组越界,比如定义int a[10],语句a[-2]=100编译也不会报错,但可能会修改其他变量的值,或者访问指令区域,使得程序运行会出错。

举例:筛法求n以内的素数(素数即不存在除1和本身外的因子)

思路1):遍历一一判断。判断数j,即判断小于等于j的平方根的数可不可以整除j;

思路2):对于数i,删掉i的倍数的数

6.函数

1)传值:形参只是实参的拷贝,形参的改变不影响实参

2)传引用:形参的改变影响实参,比如数组

7.库函数和头文件

库函数是由编译器自带的,为使用这些库函数需要有声明,而头文件内部即包含许多库函数的声明。

比如 cin cout ,需要使用头文件iostream 因此需要#include <iostream>

8.位运算

按位与&:置0

按位或|:置1

按位异或:取反 0xff(1111 1111)

注:异或运算的特点是 如果a^b=c则 c^b=a c^a=b 此特点可用于加密解密,或者交换两个数的值

c++学习day2的更多相关文章

  1. NodeJS学习day2

    今天还是接着学习IO,主要方面是文件路径相关操作 练习代码如下: const fs = require('fs') // 执行C:\CS\Node.js>node .\day2\fsRoad.j ...

  2. Python学习-day2

    这周时间充裕,把第一周的两个作业登陆验证和三级菜单做完后又用零零散散的时间看完了第二周的课程,不得不说老男孩这个教育方式感觉还是不错的,其实说白了就是花钱找个人监督自己学习呗,而且还强行让我们养成一些 ...

  3. python学习day2

    一.模块初识 python模块 模块让你能够有逻辑地组织你的Python代码段. 把相关的代码分配到一个 模块里能让你的代码更好用,更易懂. 模块也是Python对象,具有随机的名字属性用来绑定或引用 ...

  4. python全栈学习--day2

    一.in的使用 说明:in有相当多的用处,比如判断,循环for 等. 实例一:in 操作符用于判断关键字是否存在于变量中 s = '男人john' print('男孩' in s) print('男孩 ...

  5. Python基础学习Day2

    一.格式化输出 需求格式化输出:姓名.年龄.工作.爱好 # 格式化输出 name = input('请输入用户名:') age = input('请输入年龄:') job = input('请输入你的 ...

  6. Python爬虫学习 - day2 - 站点登陆

    利用Python完成简单的站点登陆 最近学习到了爬虫,瞬时觉得很高大上,想取什么就取什么,感觉要上天.这里分享一个简单的登陆抽屉新热榜的教程(因为它不需要验证码,目前还没有学会图像识别.哈哈),供大家 ...

  7. Pyhton学习——Day2

    Python开发IDE(工具)Pycharm.eclipse1.循环while 条件 #循环体 #条件为真则执行 #条件为假则执行break用于退出所有循环continue用于退出当前循环 2.Pyc ...

  8. HTML学习----------DAY2第五节

    属性为 HTML 元素提供附加信息. HTML 属性 HTML 标签可以拥有属性.属性提供了有关 HTML 元素的更多的信息. 属性总是以名称/值对的形式出现,比如:name="value& ...

  9. HTML学习----------DAY2第四节

    HTML 文档是由 HTML 元素定义的. HTML 元素 HTML 元素指的是从开始标签(start tag)到结束标签(end tag)的所有代码. 注释:开始标签常被称为开放标签(opening ...

  10. Linux学习Day2:安装RedHat Linux和新手必须掌握的命令

    今天是Linux线上培训的第二天,主要是Linux环境的安装和几个常见命令的学习,具体如下: 一.RHEL7系统的安装 首先是VMware WorkStation 12.0软件的安装,然后是RHEL7 ...

随机推荐

  1. flask flash消息

    请求完成,让用户知道状态发生了变化,可以使用flash确认消息 示例: xx.py from flask import Flask,render_template,request,redirect,u ...

  2. Hadoop生态圈-单点登录框架之CAS(Central Authentication Service)部署

    Hadoop生态圈-单点登录框架之CAS(Central Authentication Service)部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.CAS简介 CAS( ...

  3. Java NIO中的Buffer 详解

    Java NIO中的Buffer用于和NIO通道进行交互.如你所知,数据是从通道读入缓冲区,从缓冲区写入到通道中的.缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存.这块内存被包装成NIO ...

  4. Java Hibernate中的悲观锁和乐观锁的实现

    锁(locking) 业务逻辑的实现过程中,往往需要保证数据访问的排他性.如在金融系统的日终结算 处理中,我们希望针对某个cut-off时间点的数据进行处理,而不希望在结算进行过程中 (可能是几秒种, ...

  5. float clearfix

    Float float 属性的原本作用是: 为了实现文字环绕效果 float 父元素高度塌陷实现文字环绕效果 float 固定一列宽的自适应布局 float 多列布局` float 固定一列宽的自适应 ...

  6. Gson入门教程【原】

    gson一个jar包就能纵横天下,不像Json-lib.jar依赖其它jar包. 点击右边图片下载jar包       或以下链接 http://central.maven.org/maven2/co ...

  7. Arrays.asList() 的使用注意

    Sometimes it is needed to convert a Java array to List or Collection because the latter is a more po ...

  8. tedu训练营day03

    Day03笔记1.作业 1.假如你现在25周岁,每年365天,计算你过了多少个星期天(大概数字) 提示 :地板除 2.毕业薪资为10000元,每年涨20%,十年之后你的薪资为多少元? 提示: 幂运算( ...

  9. MySQL的随笔

    数据库引擎 MySQL5.0支持的存储引擎包括MyISAM,InnoDB.MEMORY.MERGE.BDB等等,其中InnoDB和BDB提供事务安全表,其他存储引擎都是非事务安全表. MyISAM M ...

  10. 使用二分查找判断某个数在某个区间中--如何判断某个IP地址所属的地区

    一,问题描述 给定100万个区间对,假设这些区间对是互不重叠的,如何判断某个数属于哪个区间? 首先需要对区间的特性进行分析:区间是不是有序的?有序是指:后一个区间的起始位置要大于前一个区间的终点位置. ...