一、PTA实验作业

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

1. 本题PTA提交列表

2. 设计思路

3.代码截图

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

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

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

1. 本题PTA提交列表

2. 设计思路

  1. 定义整型变量ijflag,字符型变量max
  2. max等于字符串第一个字符
  3. i=1 until *(p+i)!='\0'
  4. 如果max小于*(p+i) max等于*(p+i) flag等于i
  5. i + +
  6. end for
  7. j=flag to 1
  8. *(p+j)等于它的前一位
  9. j - -
  10. end for
  11. max赋给指针所指第一个字符

3.代码截图

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

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

题目3:6-11 报数

1. 本题PTA提交列表

2. 设计思路

  1. 定义整型变量count=0i=0jflag=1t=n,定义一个整形数组a[n]用来表示游戏的人
  2. i小于n
  3. a[i]=1;i++;
  4. end
  5. t大于0
  6. j=0 to n-1
  7. 如果a[j]等于0,跳过下一步
  8. count++
  9. 如果count=3
  10. a[j]等于0count=0out[j]等于flagflag自增1t自减一
  11. end for
  12. 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. linux 安装沙盒virtualenv 、virtualenvwrapper

    1.沙盒安装命令: 最新版本:sudo easy_install virtualenv或者sudo apt-get install virtualenv 指定版本:pip install virtua ...

  2. JQuery移动动画实现点击按钮切换图片--JQuery基础

    直接贴源码了哈,这些都是自己总结的……汗水几何?希望能帮到大家. <%@ Page Language="C#" AutoEventWireup="true" ...

  3. 【BZOJ1006】神奇的国度(弦图)

    [BZOJ1006]神奇的国度(弦图) 题面 BZOJ 题解 直接参考弦图的做法 #include<iostream> #include<cstdio> #include< ...

  4. 【BZOJ2006】超级钢琴(主席树,优先队列)

    [BZOJ2006]超级钢琴(主席树,优先队列) 题面 BZOJ 题解 既然是一段区间 首先就要变成单点 所以求一个前缀和 这个时候贪心很明显了: 枚举每一个点和可以和它组成一段的可行的点 全部丢进一 ...

  5. 【BZOJ2002】弹飞绵羊(Link-Cut Tree)

    [BZOJ2002]弹飞绵羊(Link-Cut Tree) 题面 题目描述 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏.游戏一开始,Lost ...

  6. 【BZOJ3675】序列分割(斜率优化,动态规划)

    [BZOJ3675]序列分割(斜率优化,动态规划) 题面 Description 小H最近迷上了一个分隔序列的游戏.在这个游戏里,小H需要将一个长度为n的非负整数序列分割成k+1个非空的子序列.为了得 ...

  7. C#服务器端生成报告文档:使用帆软报表生成Word、Pdf报告

    一.帆软报表简介 报表工具中,帆软报表相比Crystal Report(水晶报表).SQL Server Report Service(SSRS)等报表工具来说算是佼佼者,此外帆软报表在统计图表.数据 ...

  8. 《阿里巴巴Android编码规范》阅读纪要(一)

    版权声明:本文出自汪磊的博客,转载请务必注明出处. 2月28日阿里巴巴首次公开内部安卓编码规范,试想那么多业务线,开发人员,没有一套规范管理起来是多么麻烦,以下是个人阅读Android基本组件部分过程 ...

  9. 关于KPM算法

    [转]从头到尾彻底理解KMP http://blog.csdn.net/v_july_v/article/details/7041827 int* GetNextval(char* p){ int p ...

  10. Hadoop之Secondary NameNode

    NameNode存储文件系统的变化作为log追加在本地的一个文件里:这个文件是edits.当一个NameNode启动时,它从一个映像文件:FsImage,读取HDFS的状态,使用来自edits日志文件 ...