软件总结
AdamMaoKkk
共勉
展开
-
二叉树——基础选择错题记录
做错的一道简单选择,主要各序遍历并不熟练,故把每种选项都推了一边2-7若一棵二叉树的先序序列和后序遍历分别是1、2、3、4和4、3、2、1,则该二叉树的中序序列不会是____。(2分)A. 1、2、3、4B. 2、3、4、1C.3、2、4、1D.4、3、2、1如图没有捷径,多写肯定能满满熟练...原创 2019-05-08 21:47:21 · 180 阅读 · 0 评论 -
MOOC第一次测试错题总结
其实我是想写4种可能性的:0,1,2,3但是我忘了小于零的数:-1,-2,-3所以一共有7种,答案为 A。。。字符型变量存储和运算都是用其对应的ASCII码,‘B’=66,‘8’=56,‘3’=51错误思路:做题的时候傻了。。。先用8-3=5,然后居然把5的ASCII码又加回去了。。。‘5’=53所以53+66=119=‘w’。。。(我想去死)答案应该是‘G’=71=66+5...原创 2018-11-26 17:05:05 · 1062 阅读 · 0 评论 -
int型数据超过范围后值变化
当int型整数超出自己范围时,会从它的最小值重新开始,例如:int i=2147483647;//int范围:-2147483648~2147483647i+1;//i=-2147483648unsigned int j=4294967295 ; //unsigned int范围:0~4294967295j+1; //j=0j+2; //j=1代码如下:#include <st...转载 2018-11-22 21:06:18 · 2940 阅读 · 0 评论 -
二维数组用类似一维数组表示地址的题(学完指针再自己总结一次)
emmmmm很明显这题不选D现在对地址的了解和运用还不扎实,先贴一下 张XX大佬 的话给大佬点赞原创 2018-11-22 11:56:04 · 441 阅读 · 0 评论 -
double变量可以用%f输出
题上看到的,以前都没注意过这个问题总结:double变量可以用%f或%lf在printf输出,float变量只能用%f输出double变量只能用%lf在scanf输入,float变量只能用%f输入看起来float适应性差一些哦 ( = = )借鉴:https://zhidao.baidu.com/question/351432676.html...原创 2018-11-22 11:45:25 · 12768 阅读 · 0 评论 -
有关整型变量计算的小细节(取整——坑)
假设你定义了两个变量doubule s; int n;运算scanf(“%d”,&n);for( ; n ; n- -){s=1/(n*(n+1));}你会发现得出的s永远都是0很简单的道理但找错的时候很不容易关注到。。即:整型变量在计算的时候如果结果不为整数会强制取整(似乎是向下取整)比如 1/2=0,5/2=2,8/5=1 等等解决方法也很简单:写...原创 2018-11-22 11:36:40 · 1790 阅读 · 0 评论 -
数组赋值 问题 + 整型计算后赋值给浮点型 问题
前几天数组测试,总结下做的时候不敢确定的知识点:。。问题一上题:重点是 C :先定义,后赋值,我只是觉得这个选项比较怪所以选的,它并不是定义的同时赋值解释: 数组名为地址(这就是为什么给数组用scanf赋字符串的时候不用加地址符“ & ”),地址是一个常量,常量不能出现在赋值“ = ”的左侧。(不挪窝)顺便解释下: A,定义的同时赋值数组可以不加长度; B,定义长度同时赋值...原创 2018-11-16 07:44:30 · 3181 阅读 · 0 评论 -
PTA: 7-1 素数对猜想 (20 分) (考点:如何高效率判断素数)
都怪我没积极看MOOC,这题我考试瞪了一个小时,最后一个点永远超时,没别的思路思路一:(数组不是个好思路,因为N的值可能很大,那样的话需要定义的数组也得很大,而且没有准确的上限)——先判断素数,存入数组,再作差,再判断#include&lt;stdio.h&gt;int main(){ int a[100]; int t1,N,t,n=0,c,t3=0; sc...原创 2018-11-16 07:12:12 · 3101 阅读 · 2 评论 -
gets+puts 函数的知识点总结(有不懂的地方,待改)
puts函数:puts函数其实就是一种输出函数(非pow等的运算函数)puts()函数只用来输出字符串,里面的参数可以直接是字符串或者是存放字符串的字符数组名。printf()函数的输出格式很多,可以根据不同的格式加不同的转义字符(例:整型%d,字符型%c,等。。。)来输出不同的东西。puts()函数等价于语句 printf(&quot;%s\n&quot;,s);(因为使用 puts() 显...原创 2018-11-12 20:45:29 · 543 阅读 · 0 评论 -
有关sizeof函数内部运算的问题
先来看大佬的一道题(有修改) #include <stdio.h> int main() { int i; i = 10; printf("%d\n", i); printf("%d\n", sizeof(++i)); printf("%d\n", sizeof(i++)); printf("%d\n", i); return 0; }这...原创 2018-11-27 10:53:50 · 756 阅读 · 0 评论 -
各种变量的字符长度和范围
主要大佬写的太好了,没什么好总结的而且看到未经允许不予转载,所以放个网址,以便以后自己回来看https://blog.csdn.net/zs391077005/article/details/53411267...转载 2018-11-27 11:01:05 · 2764 阅读 · 0 评论 -
精妙的堆排序算法
堆排序是一种不稳定的选择排序法,但在需要排的数的基数很大的时候效率相对较高堆排序是一种以二叉树结构为思维框架的排序算法想搞懂堆排序必须先明白什么是二叉树,二叉树应该怎么画,二叉树中每个点与数组每个数下标的对应关系还有什么是 大/小顶堆,还有堆排序的排序思路排序思路:先对二叉树进行排序,使其满足 大/小 顶堆,然后将根节点的数与数组中最后一个数进行交换,并把交换后的最后一个数固定在那里,之...原创 2018-12-13 11:59:39 · 243 阅读 · 0 评论 -
野指针问题(链表学习拓展)
野指针是指未分配 或 赋值某固定地址的随机(非空)地址指针(个人理解)故在链表的结构体指针中野指针特别容易出现段错误——————————————————————————————————以下借鉴:https://bbs.csdn.net/topics/392094119野指针不是随机分配的空间,野指针是指,指针变量里存放的数据(地址)是随机数,那么它指向的内存空间有可能是可读可写的,有可...原创 2019-04-20 11:37:15 · 608 阅读 · 0 评论 -
数据结构—— 6-3 两个有序链表序列的合并
很简单的一道题,但有几个小坑(记下来记下来,划重点划重点,期末要考23333)。。。本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。函数接口定义:List Merge( List L1, List L2 );其中 List 结构定义如下:typedef struct Node *PtrToNode;struct Node { Element...原创 2019-04-23 20:43:45 · 1134 阅读 · 0 评论 -
PTA基础——7-23 币值转换(另类思路)
PS:跪求有空的大佬们给点参考建议,谢谢谢。。。输入一个整数(位数不超过9位)代表一个人民币值(单位为元),请转换成财务要求的大写中文格式。如23108元,转换后变成“贰万叁仟壹百零捌”元。为了简化输出,用小写英文字母a-j顺序代表大写数字0-9,用S、B、Q、W、Y分别代表拾、百、仟、万、亿。于是23108元应被转换输出为“cWdQbBai”元。输入格式:输入在一行中给出一个不超过9...原创 2019-04-18 21:10:11 · 2023 阅读 · 0 评论 -
数据结构——链表,多项式相加
指针真的是蛮重要的,基础不牢怨不得别人,链表差点给我学自闭,尤其是数据结构算法这块下面分享一个很简单的链表应用:多项式相加PS:多项式录入还不完善,故只能按指数从小往大挨个顺序输入。。 水平较差请多谅解,应用基础 C ,虽然可读性不高但耐心点初学者应该都能读懂/* 1. (面向结构的编程语言)将程序按照功能分块。 a、 创建多项式. void creatPo...原创 2019-04-16 19:16:25 · 4227 阅读 · 1 评论 -
数据结构—— 6-1 链式表的按序号查找
本题要求实现一个函数,找到并返回链式表的第K个元素。函数接口定义:ElementType FindKth( List L, int K );其中List结构定义如下:typedef struct LNode *PtrToLNode;struct LNode { ElementType Data; PtrToLNode Next;};typedef PtrToLNode...原创 2019-04-16 16:18:03 · 694 阅读 · 0 评论 -
数据结构——顺序表(初学者简易版)
刚接触数据结构,看书太着急,一上来就被各种自定义的变量和函数搞得一懵一懵的目前顺序表刚刚入门,花了两天写了一个顺序表的基础版本(对于初学者应该是比较通俗易懂的了)欢迎各位大佬指错督促,谢谢你们PS:以下顺序表包含操作有创建初始化查找插入删除#include<stdio.h>#include<stdlib.h>#define MAX 100#def...原创 2019-04-09 21:55:16 · 847 阅读 · 0 评论 -
字符串大小比较问题
首先字符串比较函数:strcmp(字符串1,字符串2)其使用规则为:若字符串1和字符串2相等,返回0若字符串1大于字符串2,返回一个正整数+1若字符串1小于字符串2,返回一个负整数-1。。。其次字符串如何比较大小:其规则为:从第一个字符开始先把从前到后一样排序且一样的字符跳过,从不同的字符开始比较其对应的ASCII码的大小,只要某个字符比出大小,那之后的字符都无视掉,此时含...原创 2018-12-10 21:39:36 · 2449 阅读 · 0 评论 -
数组初始化问题
这个点我一直没重视,今天做题时老师提及了,总结下其实也就一句话的事:数组未被初始化时其中的元素都是随机值,但如果给其中一部分元素在定义时赋值了(也就是初始化,一定是只有在定义时),那数组中未初始化的元素系统自动赋0值不难理解,要点虽小,但值得重视...原创 2018-12-06 19:57:22 · 587 阅读 · 1 评论 -
有关字符(串)长度的例题 + 转义字符的知识点
例题:昨天在书上看到的:问输出的数字为多少一开始我写的是7,8(错的)因为我把“ \ ”当成一个单独的字符,虽然我知道" \n "是一个字符(换行)但没考虑“ \ \ ”的问题其实答案是6,7,“ \ \ ”被视为一个字符个人理解:" \ “后面再加个” \ “也是一个转义字符,第一个” \ “作为转义字符的标志,第二个” \ “被当做转义字符的内容。————就像是” \n “(换行)...原创 2018-11-14 17:02:21 · 1981 阅读 · 0 评论 -
strlen函数 与 sizeof 的不同(有不理解的地方)转载
。。strlen 是一个函数,它用来计算指定字符串 str 的长度,但不包括结束字符(即 null 字符?? \0 吗?)。关键字 sizeof 是一个单目运算符,而不是一个函数。与函数 strlen 不同,它的参数可以是数组、指针、类型、对象、函数等。原址:http://c.biancheng.net/view/342.html。。。一、strlen与sizeof的区别:1. ...转载 2018-11-14 16:42:19 · 244 阅读 · 0 评论 -
有关字符串%s的问题(+没搞懂的数组越界)改。。。多谢大佬指导
字符串的格式控制符为%s字符串只能被赋值给数组(想想也是,毕竟这么一串儿呢)字符串%s在输入/输出时只用打数组的名例:char a[20];scanf(“%s”,&amp;amp;amp;amp;amp;amp;a);printf(“%s”, &amp;amp;amp;amp;amp;amp;a );但如果是输入/输出字符%c,就得精确到数组的哪一个了,用a[xx] ——&amp;amp;amp原创 2018-11-08 12:03:28 · 1496 阅读 · 0 评论 -
10月25日每日总结+公约公倍+逆序输出+素数
题:(假装有图)不难但是可以当做重点记一下题:(继续假装有图)之前我把return 0写错位置了,写到for的大括号里面,所以每次只循环了一次就结束了,还是粗心了,检查得再细心一些,低级错误真的没意思这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格...原创 2018-10-25 22:55:31 · 174 阅读 · 0 评论 -
10月23日每日总结(swtich细节)
switch语句之前用的太少,没钻太细总结下case后不加break的情况:switch(a){ case 1:case 2:case 3:case 4: }此时若a=1,输出四个里的全部情况,即1、2、3、4;若a=3,则输出3之后的所有情况,即3、4由此可知,若switch语句中每个case后没有break,则会将对上条件的case及其之后的所有case都输出...原创 2018-10-23 09:50:57 · 204 阅读 · 0 评论 -
10月20日每日总结
今天看了一下午辩论,没啥新的点要总结,就吧以前做过的挺费劲的题写一下吧输入整数n,输出n行星号,第一行一个,第二行三个,第三行五个。。。例如输入正整数3.输入如下图形: 这题不难,就是对于新手来说想起来比较费劲,我当初自己打的时候试了好多次写博客的时候还发现自己打错了。。。又试了好多次。。。但是最后成功的时候还是很痛快的好吧然后还有一道昨天的题,为了警戒自己也打上来:自习审题!!!...原创 2018-10-20 19:52:40 · 661 阅读 · 0 评论 -
10月19日每日总结(补)+(一丢丢)字符数值概念
昨天好不容易把朗诵啥的事都搞完了,放松一下,有点过头,所以20号补一下昨天的总结课本习题2:1.已定义a为字符型变量,则下列语句中正确的是______A.a=‘97’ B.a=“97” C.a=97 D.a=“a”好不容易老师叫我一次,呵呵,我一开始选的A,没想就去下一题了,丢人丢大了。。。注意: ‘ ’ 里只能放一个数或字符!!!所以A超出了字符类型的范围;B、D都是字符串...原创 2018-10-20 11:21:00 · 288 阅读 · 0 评论 -
10月22日每日总结
费好大劲打出来的判断质数(素数)的代码,不记都感觉对不住自己,我的脑子暂时还没法自己想出来,有借鉴别人的代码才自己改对的2的n次方如何用代码打出来:首先,头文件需要#include&amp;lt;stdio.h&amp;gt;然后用 a=pow(2,n); 即可同理,x的n次方就用 a=pow(x,n);今天太累了就写这些算了。...原创 2018-10-22 19:49:25 · 232 阅读 · 0 评论 -
C语言判断素数(求素数)(两种方法)(第二种没看懂Kkkkk有空一定搞明白)(非原创)
素数又称质数。所谓素数是指除了 1 和它本身以外,不能被任何整数整除的数,例如17就是素数,因为它不能被 2~16 的任一整数整除。思路1):因此判断一个整数m是否是素数,只需把 m 被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么 m 就是一个素数。思路2):另外判断方法还可以简化。m 不必被 2 ~ m-1 之间的每一个整数去除,只需被 2 ~ 之间的每一个整数去除就可以...转载 2018-10-22 19:12:24 · 1574 阅读 · 0 评论 -
10月17日每日总结
今天PTA 选择题第一题直接给我干蒙了。。。上图、(i%2)大概能理解,但do-while(–i)是什么鬼?看不懂直接导致无从下手查完发现其实很好理解,其实都是对( )内的表达式求值,=0则为假,!=0则为真。然后继续语句判断(明白后感觉之前自己好傻。。。)今天还看到一道选择里一个选项为A.a&amp;lt;&amp;gt;0于是乎,上大佬的原话好吧:“c语言中没有&amp;lt;&amp;gt;这样的操作符。表原创 2018-10-17 19:56:21 · 277 阅读 · 1 评论 -
10月16日每日总结:
10月16日每日总结:今天在PTA上看到了一类题如图是我已经改过的PTA选择题,我原来应该是选A和A因为我之前在写程序的时候一直严格按照书上的格式,每个缩进我都精确输入,这是个好事,我一眼扫过可以很容易的看出程序中从属不同的部分,但我也限制了自己的思维,限制了自己的思想,自然而然的认为在if语句中,else是与它相同缩进的if相配对。错就错在这里!为了加深自己的印象,我又找了后面一道PTA...原创 2018-10-16 20:06:34 · 192 阅读 · 0 评论 -
10月29日每日总结
PTA有道题给我难住了。。。其实吧。。。又是没好好审题,自罚好吧,自罚如图第一,大括号我没仔细看,while…(1分)后面有一个左大括号,没看见第二,我没仔细审题,题目写的很清楚:用0结束输入。我打的。。。感觉自己像个脑残第三,确实是思考的不够全面,这题又不是自增,number怎么变?肯定得再输入,没话说。。。我去做俯卧撑了所以最后改的是:number!=0scanf("%d",&...原创 2018-10-29 19:49:56 · 228 阅读 · 0 评论 -
10月24日每日总结(for循环细节+空格过滤问题)
感觉自己像个白痴。。。审题要细心,细心,细心!!!我一开始扫了一眼就开始做了,以为sum=1+2+3+…+10,所以就写上了55但是!用codeblock发现结果为10,再审题时就想不明白了,计算机不会错,我还用之前错的旧思维是不可能自己想明白的。其实,仔细审题就会发现,sum在每次循环的时候,都会被赋值0所以,这道题教会我的,是审题,还有知道自己错的时候要换个思路重新想一遍错题!。。...原创 2018-10-24 16:07:57 · 215 阅读 · 0 评论 -
字符:回车与换行的不同(附ASCII表)+ 补充
今天在PTA 上打了个统计字符的题就因为这一个点,忙活老半天,费劲。。。回车是回车,换行是换行,在ASCII码中都有明确定义就用if语句判断来说吧如果你想判断换行:if(a= =10||a= =’\n’);如果你想判断回车:if(a= =13||a= =’\r’);。。最后附上一张ASCII表好吧...原创 2018-10-31 19:59:11 · 2859 阅读 · 0 评论 -
初碰数组(大小排序问题)
【例4.5】 从键盘输入一个正整数n(1&amp;lt;n&amp;lt;=10)再输入n个数,用冒泡法从小到大排序后输出。#include&amp;lt;stdio.h&amp;gt;#define N 10 //符号常量int main(){ int a[N]; int t,t1,t2,t3,c; for(t=0;t&amp;lt;N;t++) {原创 2018-11-05 19:17:32 · 191 阅读 · 0 评论 -
数组例题(逆序存放问题)
实验 p29 【2】题:输入一个正整数n(1<n<=10),再输入n个整数存入一维数组,按逆序重新存放数组元素后再输出。程序运行示例:Input n:5Input 5 integers:4 6 5 7 1Output:1 7 5 6 4。。。先来谈谈个人理解,逆序存放我觉得应该是改变数组内的值,而不只是单纯的逆序输出所以代码如下:#include<...原创 2018-11-07 06:55:39 · 3608 阅读 · 2 评论 -
有关整型强制保留和对齐的问题
今天有位可爱的小童鞋问了我个题,99乘法表应该都知道吧,如图题中有个要求是左对齐,emmmmm,没错我不会( = = ),那自然要查一查咯总结:1.%d为整型的输出格式标识2. “ - ”在整型标识符中(反正我只知道整型能用)代表左对齐,没有则右对齐3. %0Xd 代表强制保留X位,且用0从左开始补齐(前几次CSDN总结的)4. % Xd 代表强制保留X位,且用空格从左补齐(纯...原创 2018-11-04 19:16:41 · 311 阅读 · 0 评论 -
有关算某数的x次方的效率问题(待修正)
上课老师跟我们提及这个事,说的不细,先整理下怕忘了(凭印象写的,不保证正确)。。pow的返回值和运算值都是double双精度浮点型,起码小数点后6位,像这样的数计算机用乘法计算时其实很耗时间(而且意义不大)所以当x为整数时,不妨用for循环来计算次方 例:for(t=1;t<=x;t++)那pow什么时候用呢,当x为小数时,你用个for循环给我计算次方看看呀!?我认你当大哥好不好...原创 2018-11-04 13:48:43 · 218 阅读 · 0 评论 -
判断语句=和==的不同(神坑)+自增/减运算符的例题(神坑+1)
之前做的PTA有个填空,死也想不出来错在哪里先上题:我一开始扫了一遍代码,发现x只出现在if的判断语句里,就觉得x输入什么就是什么值(于是乎我就错了)。。错没关系呀,可是不知道自己错在哪不就白痴了吗?我甚至还在想是不是负号“ - ”没法被录入(拿不住所以偷偷试了一下,负号可以正常录入,你们全当不知道好吧 = = )。这也许是编程小白很容易陷入的一个误区:判断语句不会使变量变化也...原创 2018-11-04 13:34:47 · 612 阅读 · 0 评论 -
C语言自增++/减--运算符的优先问题+例题
PTA上错了道选择题:首先0前缀代表八进制,所以y=10 D(十进制),那么问题来了,答案不选C选什么?我去查了下关于自增运算符的优先级问题(优先级不同于优先),++/–的优先级大于 *所以按理说应该x先++再 * y(如果你这么想了请允许我偷偷笑下),正常人都会这么想但其实计算机里自增是有优先与否的问题的,即x++不同于++x在这里抄一段大佬的原稿:我开始寻找答案。在C++ Pri...原创 2018-11-01 21:03:07 · 955 阅读 · 0 评论