C博客作业05--指针

0.展示PTA总分

1.本章学习总结

1.1 学习内容总结

1.2 本章学习体会

  • 刚开始学一直把指针当成一个变量去操作,后来学会了操作地址
  • 有了指针,可以通过传递多个地址,在自己定义的函数中完成对这些地址中的值进行更改,则原函数中的变量的值也会相应更改,相当于一个函数可以传回多个值,明显提高了传递效率

2.PTA实验作业

2.1查找子串

==========

2.1.1 伪代码

2.1.2 代码截图

2.1.3 总结本题知识点

  • 由fgets输入的字符串,在遍历时结束时需要判断是否不等于0或
  • 指针没有指向地址的话最好赋值为NULL,否则变成野指针容易编译错误

2.1.4 PTA提交列表及说明

  • 1.编译错误:if()内==写成=
  • 2.多种错误:错将tPtr写成*tPtr

2.2说反话-加强版

2.2.1 伪代码

2.2.2 代码截图


2.2.3 总结本题知识点

  • 通过视频了解了printf(" %.*s", len, p);这种用法,输出p位置之后的len个字符
  • while (endPtr&&endPtr!=' ') endPtr++;可以找出最后一个字符的位置

2.2.4 PTA提交列表及说明

1部分正确:第一个单词前没有空格,故需要另外输出
2.部分正确:测试点三,最小词,前有空格错误,用VS调试之后发现没有问题

2.3合并两个有序数组

2.3.1 伪代码

2.3.2 代码截图


2.3.3 总结本题知识点

  • 使用malloc函数申请整型储存空间,最后要用free函数释放
  • 巧妙地利用指针自增,方便比较大小并同时存入新数组,当一个数组比较完时,将另外一个数组按顺序存入

2.3.4 PTA提交列表及说明

1.答案错误:不知道在一个数组比较完之后如何找到他的下标,在看了老师讲解后利用下标自增解决

3.阅读代码

题目

代码优点及可以学习的地方

  • 代码的作用:将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。
  • 通过从左向右迭代字符串,轻松地确定字符位于 Z 字形图案中的哪一行
  • 使用 ext{min}( ext{numRows}, ext{len}(s))min(numRows,len(s)) 个列表来表示 Z 字形图案中的非空行。
  • 从左到右迭代 ss,将每个字符添加到合适的行。可以使用当前行和当前方向这两个变量对合适的行进行跟踪。
  • 代码功能很强,简洁明了,将原本数组要做的十分复杂的事情转化的简单
原文地址:https://www.cnblogs.com/hzhong/p/11965890.html