c++学习day2
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的更多相关文章
- NodeJS学习day2
今天还是接着学习IO,主要方面是文件路径相关操作 练习代码如下: const fs = require('fs') // 执行C:\CS\Node.js>node .\day2\fsRoad.j ...
- Python学习-day2
这周时间充裕,把第一周的两个作业登陆验证和三级菜单做完后又用零零散散的时间看完了第二周的课程,不得不说老男孩这个教育方式感觉还是不错的,其实说白了就是花钱找个人监督自己学习呗,而且还强行让我们养成一些 ...
- python学习day2
一.模块初识 python模块 模块让你能够有逻辑地组织你的Python代码段. 把相关的代码分配到一个 模块里能让你的代码更好用,更易懂. 模块也是Python对象,具有随机的名字属性用来绑定或引用 ...
- python全栈学习--day2
一.in的使用 说明:in有相当多的用处,比如判断,循环for 等. 实例一:in 操作符用于判断关键字是否存在于变量中 s = '男人john' print('男孩' in s) print('男孩 ...
- Python基础学习Day2
一.格式化输出 需求格式化输出:姓名.年龄.工作.爱好 # 格式化输出 name = input('请输入用户名:') age = input('请输入年龄:') job = input('请输入你的 ...
- Python爬虫学习 - day2 - 站点登陆
利用Python完成简单的站点登陆 最近学习到了爬虫,瞬时觉得很高大上,想取什么就取什么,感觉要上天.这里分享一个简单的登陆抽屉新热榜的教程(因为它不需要验证码,目前还没有学会图像识别.哈哈),供大家 ...
- Pyhton学习——Day2
Python开发IDE(工具)Pycharm.eclipse1.循环while 条件 #循环体 #条件为真则执行 #条件为假则执行break用于退出所有循环continue用于退出当前循环 2.Pyc ...
- HTML学习----------DAY2第五节
属性为 HTML 元素提供附加信息. HTML 属性 HTML 标签可以拥有属性.属性提供了有关 HTML 元素的更多的信息. 属性总是以名称/值对的形式出现,比如:name="value& ...
- HTML学习----------DAY2第四节
HTML 文档是由 HTML 元素定义的. HTML 元素 HTML 元素指的是从开始标签(start tag)到结束标签(end tag)的所有代码. 注释:开始标签常被称为开放标签(opening ...
- Linux学习Day2:安装RedHat Linux和新手必须掌握的命令
今天是Linux线上培训的第二天,主要是Linux环境的安装和几个常见命令的学习,具体如下: 一.RHEL7系统的安装 首先是VMware WorkStation 12.0软件的安装,然后是RHEL7 ...
随机推荐
- Java的内省机制
我现在的理解就是,Java的内省机制就是针对JavaBean的,可以获取到类的属性名称,以及属性的Getter和Setter方法,应该是在写框架的时候才会用到内省机制,还有一个地方可以用到内省机制,就 ...
- 基于CentOS6.8版本配置真实域名的方法
前言:审核了15天的时间终于审核下来了,但是结果发现配置域名掉坑了,记录一下 (一)首先配置域名三步走 1.先到域名商网站解析你你的域名(我的是百度云) 2.接着修改linux的host指向 例如: ...
- dom4j基础教程【转】
转自 http://blog.csdn.net/whatlonelytear/article/details/42234937 ,但经过大量美化及补充. Dom4j是一个易用的.开源的库,用于XML, ...
- python -- conda pytorch
Linux上用anaconda安装pytorch Pytorch是一个非常优雅的深度学习框架.使用anaconda可以非常方便地安装pytorch.下面我介绍一下用anaconda安装pytorch的 ...
- 自学python 4.
1.li = ["alex","tom","mike","god","merffy"](1)a = ...
- Excel列名序号互转
public static int ToIndex(string columnName) { if (!Regex.IsMatch(columnName.ToUpper(), @"[A-Z] ...
- IIS 常见异常及解决办法
Ø 简介 IIS 是我们平常接触比较多的服务端软件,用于站点发布等,本文主要记录 IIS 常见的异常及解决办法.主要包括: 1. Visual Studio 启动 Web 项目提示"无 ...
- js强制将页面放到最大
<!DOCTYPE html> <html> <head> <title></title> <script language=&quo ...
- js apply使用
js中apply方法的使用 1.对象的继承,一般的做法是复制:Object.extend prototype.js的实现方式是: Object.extend = function(destinati ...
- char,wchar_t 长度
(测试环境:VC++6.0) char类型 wchar_t类型 类型大小(32位系统) 8位 16位 常量字符表示法 'A' L'A' 或 'A' 常量字符串表示法 'hello' L'hello' ...