PAT笔记1

  1. switch case语句
  2. 精确到小数点后一位输出
    //用setprecision(n)设置精度,其中n表示精确到小数点后n位 ,用到格式控制符 要引入库函数#include<iomanip>
    详情
    使用setprecision(n)可控制输出流显示浮点数的数字个数,如果setprecision(n)setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。
    要么用printf设置格式
  3. 输入函数

C++中几个输入函数的用法和区别(cin、cin.get()、cin.getline()、getline()、gets()、getchar()))

get()和getchar():
char ch;
ch=cin.get();	//or:cin.get(ch);
ch=getchar();

get是c++的函数,getchar是c的函数
4. 求数组和字符串长度的方法不一样
sizeof返回定义数组时,编译器为其分配的数组空间大小,不关心里面存了多少数据。strlen只关心存储的数据内容,不关心空间的大小和类型。
5. 用库函数判断是否为字母(是大写还是小写),判断是否为数字
判断字符类型所需要的头文件: #include <cctype>
6. 数字和字母的ASCII码
a-z:97-122,A-Z:65-90,0-9:48-57
7. C++的while和do-while循环
do-while的格式:
do{
循环体;
}while(循环控制语句);
8. 结构体变量的定义该在main函数外面还是里面
可以在main 函数里面定义,也可以在main函数之外定义。在main函数外定义属于全局变量,在main函数里面定义属于局部变量,只能在main函数中使用。
(亲验:无特殊情况下,放在main函数外面定义较方便)
9. 学会用printf输出各种带格式的数
10. 首先回顾一下各种进制数的表示方法
进制转换,输出其他进制的数字,C++要调用库函数

#include <bitset>

比较字符/字符串是否相等:1025题的新知识
字符:可直接用‘=’比较
字符串:要用字符串函数,strcmp(c1,c2)比较,等于0就是相等。
12. vector容器:
vector 是个容器,它定义了很多的方法,它帮你管理动态内存。
如果可以用vector就尽量用,vector是所有容器里面效率最高的,它的内部实现就是数组。
vector帮你做了动态内存分配,你不用费心处理指针的问题,避免了new跟delete操作。
总结下,就是尽量用容器vector,不要自己费心用new来管理指针。
vector的初始化要掌握。
13.
字符串函数
13. 各数据类型能表示的数据范围,表示几位,定义变量的时候会用
14. printf输出技巧
(1) %nd输出的整型宽度至少为n位,右对齐,%5d即宽度至少为5位,位数大于5则输出实际位数。
(2) %0nd用得较多,表示输出的整型宽度至少为n位,不足n位用0填充。
15. C语言结构体之间能否可以互相赋值?
可以的,但需要保证是具有相同结构的结构体变量。
可以将一个结构体变量的值赋给另一个具有相同结构的结构体变量。如student1和student2都是student类型的变量,可以这样赋值:student1= student2;
假设申明了两个成员列表完全一样的两个结构体,编译器会当作两个完全不同的类型,即使他们的成员列表是一样的,令两个结构体的变量间赋值,则是非法的。
16. memset函数
17. 四舍五入
18. 段错误一般都是内存异常访问,比如空指针范围,数组越界等
19. PAT中段错误的原因及解决方法
https://blog.csdn.net/weixin_42452034/article/details/90375058
20. 指向string的指针,和指向char数组的指针。题1029
22. char和string的长度
无论char数组,还是string字符串,都不是以空格,不是以换行(\n)作为结束符,而是以 \0 作为结束符
比如char a[ ]="xyz"和char b[ ]={‘x’,‘y’,‘z’}的长度分别是4和3
字符串的结尾部分有一个\0,也算一个
23. C++:cin、cin.getline()、getline()的用法
https://blog.csdn.net/qq_40725780/article/details/81032700
24. 能用索引就不用数组,容易超时
25. C++在未知输入类型情况下如何读入
26. C++字符/字符串和数字的转换
https://blog.csdn.net/a_Treasure/article/details/82109195
atoi():将字符串转换为整型值。
27. 字符串截取
https://blog.csdn.net/xiaohu12685/article/details/80931610
str = str.substr(2,4);//截取从第3个开始往后数4位之间的字符 cdef
28. 1045题的笔记(哇这道题真的太挫伤我自信了,算法一窍不通该咋办哦)
https://blog.csdn.net/xs18952904/article/details/75195412
memset():
在头文件<cstring>
将已开辟的内存空间arr的前cnt个字节的值设为值val。

memset(arr, val, cnt);

理论上,因为memset()是按照字节去赋值的,所以int数组只能被赋值为0(在二进制层面全为0)或者是-1(在二进制层面全为1)。
fill():
在头文件<algorithm>里。
按照数组的始末位置以一个数组元素为单位赋值,将区间内的每一个元 素都赋值为val。

fill(vector.begin(), vector.end(), val);
  1. 数学函数的运用,比如求:平方、平方根
  2. 如何让函数返回两个值,比如m,n
    方法1:设置全局变量。
    方法2:用结构体,且结构体要用函数定义
    https://blog.csdn.net/qq_34489443/article/details/81274951
  3. C++ 中头文件<bits/stdc++.h>的优缺点
    它是部分C++中支持的一个几乎万能的头文件,包含所有的可用到的C++库函数,如<istream>/<ostream>/<stack>/<queue>
    https://www.cnblogs.com/qinduanyinghua/p/11338028.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值