一、PTA实验作业

题目1:6-5 判断回文字符串

1. 本题PTA提交列表

2. 设计思路

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明。

  • 第一次做的时候我j直接等于count,其实j应该等于count-1,因为count是包括结束标志的字符串长度

题目2:6-10 字符串串动变化

1. 本题PTA提交列表

2. 设计思路

定义整型变量i,j,flag,字符型变量max
令max等于字符串第一个字符
i=1 until *(p+i)!='\0'
如果max小于*(p+i) 令max等于*(p+i) flag等于i
i + +
end for
j=flag to 1
*(p+j)等于它的前一位
j - -
end for
将max赋给指针所指第一个字符

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明。

  • 第二个循环j大于等于1,我漏了个等于

题目3:6-11 报数

1. 本题PTA提交列表

2. 设计思路

定义整型变量count=0,i=0,j,flag=1,t=n,定义一个整形数组a[n]用来表示游戏的人
当i小于n时
a[i]=1;i++;
end
当t大于0时
j=0 to n-1
如果a[j]等于0,跳过下一步
count++
如果count=3
令a[j]等于0,count=0,out[j]等于flag,flag自增1,t自减一
end for
end

3.代码截图

4.本题调试过程碰到问题及PTA提交列表情况说明。

  • 可能是字符数组做多了,我一开始不知道怎么想的,把flag的值赋为0,导致每一个结果都小了1
  • 一开始我做这道题时没有思路,不知道怎么下手(写了一个陷入了死循环的代码,可惜没截图,也忘了具体步骤了),后来我百度了一下想找点思路,发现可以用数组a[n]全为1来表示游戏中的人没有退出, 如果退出了,相应的数组的值就变为0,结合这一点,做这道题就容易多了

二、截图本周题目集的PTA最后排名。

三、阅读代码

1、

  • 这是PTA上字符数组6-9的代码,功能是实现将句中所有单词的顺序颠倒输出即说反话
  • 这段代码是周四上机课欧阳同学的代码,这里使用了指针,通过指针的指向输出顺序颠倒的数组,这样会比新定义一个数组来存放颠倒后的数组更方便

2、

  • 该函数功能是查找子串在主串第一次出现的地址
  • 代码优点是把主串或子串为空的情况考虑进去了

四、本周学习总结

一、学到的知识

1、结构体的运用

1、定义一个结构体
  • struct 结构名 {

    类型名 结构成员名1;

    类型名 结构成员名2;

    类型名 结构成员名3;

    ······

    };

    !!!最后面的分号不能忘
2、结构变量初始化
  • 在定义时对其赋值

    如:struct student s1={101,"zhang",78,87,85};
3、结构变量成员的引用
  • 格式为:结构变量名 . 结构成员名(.为结构成员操作符)
4、结构变量做函数参数的优缺点
  • 优点:可以传递多个数据且参数形式较简单
  • 缺点:对于成员多的大型结构,参数传递时所进行的数据复制使效率较低
5、结构数组
  • 定义及初始化:例如:struct student students [50]={{101,"zhang",78,87,85},{102,"wang",72,89,86}};
  • 结构成员引用:格式为:结构数组名[ 下标]. 结构成员名(依然使用结构成员操作符.)
6、结构指针
  • 指针访问结构成员:(*p).num 或 p->num 均可
  • 指针做函数参数:
7、结构体个人总结
  • 学了结构体,我感觉它就像是一个我们自己创造出来的变量,我可以像操作整型变量和字符变量那样来操作,唯一不同的就是结构成员的使用了

错题

这里的函数是没有给返回值的,我做的时候不知道在想什么,最后居然用了return,大概是没完全搞懂函数的意思吧

这里有两个错误,一个和上面一样,另一个就是我的小失误了,我没注意到下面用的是n,所以写的时候用了m(这种小失误是没认真看题的后果)

C语言指针作业的更多相关文章

  1. C语言指针作业总结

    学号 姓名 作业地址 PTA实验作业5 PTA排名2 阅读代码2 总结1 代码规范 总分 是否推荐博客 推荐理由 32 **薇 http://www.cnblogs.com/linyiwei/p/80 ...

  2. 第二周c语言PTA作业留

    6-1 计算两数的和与差(10 分) 本题要求实现一个计算输入的两数的和与差的简单函数. 函数接口定义: void sum_diff( float op1, float op2, float psum ...

  3. BMP图像直方图均衡算法(C语言大作业)

    万丈高楼平地起 C语言大作业 一.学习笔记篇 1.学习MarkDown MarkDown注重写作本身,而非花俏的界面 编辑器:vscode 插件:Markdown,Markdown Preview 2 ...

  4. C语言指针转换为intptr_t类型

    1.前言 今天在看代码时,发现将之一个指针赋值给一个intptr_t类型的变量.由于之前没有见过intptr_t这样数据类型,凭感觉认为intptr_t是int类型的指针.感觉很奇怪,为何要将一个指针 ...

  5. [转]C语言指针学习经验总结浅谈

    指针是C语言的难点和重点,但指针也是C语言的灵魂 . 这篇C语言指针学习经验总结主要是我入职以来学习C指针过程中的点滴记录.文档里面就不重复书上说得很清楚的概念性东西,只把一些说得不清楚或理解起来比较 ...

  6. 不可或缺 Windows Native (7) - C 语言: 指针

    [源码下载] 不可或缺 Windows Native (7) - C 语言: 指针 作者:webabcd 介绍不可或缺 Windows Native 之 C 语言 指针 示例cPointer.h #i ...

  7. C语言指针学习

    C语言学过好久了,对于其中的指针却没有非常明确的认识,趁着有机会来好好学习一下,总结一下学过的知识,知识来自C语言指针详解一文 一:指针的概念 指针是一个特殊的变量,里面存储的数值是内存里的一个地址. ...

  8. (转载)c语言指针学习

    前言 近期俄罗斯的陨石.四月的血月.五月北京的飞雪以及天朝各种血腥和混乱,给人一种不详的预感.佛祖说的末法时期,五浊恶世 ,十恶之世,人再无心法约束,道德沦丧,和现在正好吻合.尤其是在天朝,空气,水, ...

  9. 关于C语言指针的问题

    在学习关于C语言指针的时候,发现这样一个问题,代码如下: #include<stdio.h> #include<stdlib.h> #include<string.h&g ...

随机推荐

  1. Logger之简单入门

    Java 中自带的日志系统,今天抽空了解了一点,算是入了门,所以将自己的一些心得记录下来,以备日后查看,有兴趣的朋友,看到此文章,觉得有错误或需要添加的地方,请在下方评论留言,大家可以共同进步,谢谢: ...

  2. 【BZOJ3238】差异(后缀自动机)

    [BZOJ3238]差异(后缀自动机) 题面 BZOJ 题解 前面的东西直接暴力算就行了 其实没必要算的正正好 为了方便的后面的计算 我们不考虑\(i,j\)的顺序问题 也就是先求出\(\sum_{i ...

  3. 【网络流24题】最长k可重区间集(费用流)

    [网络流24题]最长k可重区间集(费用流) 题面 Cogs Loj 洛谷 题解 首先注意一下 这道题目里面 在Cogs上直接做就行了 洛谷和Loj上需要判断数据合法,如果\(l>r\)就要交换\ ...

  4. 云计算之路-阿里云上:博客web服务器轮番CPU 100%

    今天下午14:30左右开始,不知道怎么回事,博客站点负载均衡中的web服务器轮番CPU 100%.平时访问高峰5台服务器就能稳稳支撑,而今天发现CPU出现100%问题后就开始加服务器,结果到目前加到了 ...

  5. Word 2007 封面、目录和正文页码单独设置

    word 2007 生成目录比较简单,即使不会,也可以百度,很快就能弄好.现在有如下需求: 1.封面去掉页码 2.目录页码从1开始,页码在页脚底部中间位置,格式为[1] 3.正文也从1开始,页码在页脚 ...

  6. WebService下实现大数据量的传输

    设置RemotingFormat = SerializationFormat.Binary;再序列化,通过WebService传输,客户端接收,再反序列化,确实效果大大的优于直接传送DataSet,不 ...

  7. [转]Ubuntu Linux 安装 .7z 解压和压缩文件

    [转]Ubuntu Linux 安装 .7z 解压和压缩文件 http://blog.csdn.net/zqlovlg/article/details/8033456 安装方法: sudo apt-g ...

  8. 为 Debian 8 或 Debian 9(64 位)安装 .NET Core

    在 Debian 8 或 Debian 9(64 位)上安装 .NET Core 的具体步骤: 备注:必须有用户控制目录,才能通过 tar.gz 在 Linux 系统上进行安装. 1.准备一台刚安装的 ...

  9. 在Editplus中配置java的(带包)编译(javac)和运行(java)的方法

    配置的前提是电脑安装了JDK并且配置好了相关的环境变量(JAVA_HOME,path和classpath). 配置好后在命令行中输入javac和java验证是否配置成功: 如果出现上面的情况则说明配置 ...

  10. Java枚举类使用

    用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. p ...