随笔分类 -  算法笔记学习

考研备考中。。。学习晴神宝典啦!!
摘要:进制转换 将P进制数转换为10进制 int y = 0,product = 1;//product在循环中会不断乘p,等到1,p,p^2. while(x != 0){ y = y + (x % 10) * product;//x % 10是为了每次获取x的个位数 x = x /10;//去掉x的个 阅读全文
posted @ 2021-08-01 23:37 shiff 阅读(161) 评论(0) 推荐(0)
摘要:关于pat不能使用gets gets不安全:gets函数不判断输入是否溢出。因为该函数可以无限读取,所以应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。如果溢出,多出来的字符将被写入到堆栈中,这就覆盖了堆栈原先的内容,破坏一个或多个不相关变量的值。 可以直接用scanf输入字符串数组 阅读全文
posted @ 2021-08-01 19:24 shiff 阅读(418) 评论(0) 推荐(0)
摘要:1032 挖掘机技术哪家强 (20 分) 为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。 输入格式: 输入在第 1 行给出不超过 105 的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编 阅读全文
posted @ 2021-07-17 11:17 shiff 阅读(52) 评论(0) 推荐(0)
摘要:补充 浮点数的比较以及圆周Pi的定义 const double eps = 1e-8; const double Pi = acos(-1.0); #define Equ(a,b) ((fabs((a)-(b)))<(eps)) #define More(a,b) (((a)-(b))>(eps)) 阅读全文
posted @ 2021-07-17 09:37 shiff 阅读(64) 评论(0) 推荐(0)
摘要:结构体(struct)的使用 结构体在很多场合中非常常用,可以将若干个不同的数据类型的变量或数组封装在一起,一存储自定义的数据结构,方便存储一些复合数据。 结构体的定义 定义一个结构体的基本格式如下 struct Name{ //一些基本的数据结构或者自定义的数据类型 } 例如,需要存储一个学生的学 阅读全文
posted @ 2021-07-17 09:05 shiff 阅读(1202) 评论(0) 推荐(0)
摘要:指针 什么是指针 初学者可以简单理解为指针就是变量的地址 怎么获取变量的地址呢?只要在变量的前面加上&,就表示变量的地址 #include <stdio.h> int main(){ int a = 1; printf("%d, %d\n", &a, a); return 0; } 输出结果: 26 阅读全文
posted @ 2021-07-17 08:20 shiff 阅读(244) 评论(0) 推荐(0)
摘要:sscanf与sprintf sscanf与sprintf是处理字符串问题的利器,读者很有必要学会它们(sscanf 从单词上可以理解为string + scanf,sprintf则可以理解为string + printf,均在stdio.h头文件下)。 sscanf与 sprintf与上面的格式是 阅读全文
posted @ 2021-07-17 08:18 shiff 阅读(217) 评论(0) 推荐(0)
摘要:字符数组 //字符数组的初始化 #include<stdio.h> int main(){ char str[15] = {'G', 'o', 'o', 'd', ' ', 's', 't', 'o', 'r', 'y', '!'}; for(int i = 0; i < 15; i++){ pri 阅读全文
posted @ 2021-03-11 10:57 shiff 阅读(68) 评论(0) 推荐(0)
摘要:memset——对数组中每一个元素赋相同值 给数组中每一个元素赋相同的值有两种方法:mamset函数和fill函数。这里介绍memset函数 memset函数的格式为: memset(数组名,值,sizeof(数组名)); 使用memset函数需要在开头添加string.h头文件,且只建议初学者使用 阅读全文
posted @ 2021-03-11 10:44 shiff 阅读(404) 评论(0) 推荐(0)
摘要:二维数组 和一维数组一样,二维数组也可以在定义的时候初始化。 二维数组在初始化的时候,需要按第一维数组的顺序依次给出第二维初始化情况,然后将它们用逗号隔开,并用大括号全部扩住。 在这些被赋初值的元素之外的部分将被赋值为0。 /*二维数组的初始化*/ #include<stdio.h> int mai 阅读全文
posted @ 2021-03-11 10:27 shiff 阅读(209) 评论(0) 推荐(0)
摘要:冒泡排序 排序是指将一个无序序列按某个规则进行排序。 冒泡排序的本质在于交换,即每次通过交换的方式把当前剩余元素的最大值移动到一端,而当剩余元素减少为0时,排序结束。 先来学习如何交换两个数。一般来说,交换两个数需要借助中间变量。 #include<stdio.h> int main(){ int 阅读全文
posted @ 2021-03-11 09:37 shiff 阅读(64) 评论(0) 推荐(0)
摘要:C/C++学习 不要在同一个程序中使用cout和printf,有时候会出问题 一个程序最多只能有一个主函数 变量名的第一个字符必须是字母或下划线,除第一个字母外的其他字符必须是字母、数字或下划线。 绝对值在10^9范围以内的整数或32位整数都可以定义为int型 如果是10^18以内或者说64位整数, 阅读全文
posted @ 2021-02-22 13:50 shiff 阅读(358) 评论(0) 推荐(0)