C语言程序设计05

C语言程序设计05
我在这个课程的目标是<学会并熟练运用指针>
这个作业在那个具体方面帮助我实现目标<了解指针的运用和用法>
参考文献<C语言程序设计>
PTA实践作业

在这里插入图片描述

1.1组织星期信息

输入一个正整数repeat (0<repeat<10),做repeat次下列运算:

定义一个指针数组将下面的星期信息组织起来,输入一个字符串,在表中查找,若存在,输出该字符串在表中的序号,否则输出-1。

1.1.1数据处理

数据表达:repeat,index,i,j,a【7】,char b,其中包括指针变量,数组变量,还有数组指针变量
数据处理:
在这里插入图片描述

1.1.2实验代码截图

在这里插入图片描述

1.1.3造测试数据

在这里插入图片描述

1.1.4 PTA提交列表及说明

在这里插入图片描述在这里插入图片描述
说明:
1.第一次提交失败是因为我输出index时没有对其进行加一,我没有想到我的index=0输出时要对其进行加一处理
解决方法:
上浏览器搜索并且将不懂的地方一条一条的去搜
2.第二次.提交失败是因为自己的眼睛没有看清楚题目的要求,输出的时候没有看到条件否则输出-1。就草草的进行提交
解决方法:
认真阅读了一下题目

1.2 7-3 指针型函数(代码分析)
1.2.1数据处理

数据表达:定义了指针数组char *day_name(int n),还定义了一个i让i可以进入循坏当中。
数据表达:
在这里插入图片描述

1.2.2实验代码截图

在这里插入图片描述

1.2.3造测试数据
          输入    : 5 
          输出    :   

The 0th day of the week :NOT DEFINE
The 1th day of the week :Sunday
The 2th day of the week :Monday
The 3th day of the week :Tuesday
The 4th day of the week :Wednesday
The 5th day of the week :Thursday
The 6th day of the week :Friday
The 7th day of the week :Saturday
The 8th day of the week :NOT DEFINE

1.2.4.PTA提交列表及说明

在这里插入图片描述
说明:
提交错误的原因其实就只有一个,那就是我不明白为什么他最后那个return为什么后面的返回值不是0而是((n<1||n>7) ? name[0] : name[n]); 我不知道这个有什么用,到现在也还没有搞明白,选这个题目出来的原因也是因为这个,我想知道返回值后面说明时候加0什么时候加其他的条件。

2代码互评
同学代码截图

在这里插入图片描述

自己代码截图

在这里插入图片描述
这个同学的代码很复杂他并没有使用指针去进行编程而是选择使用循环嵌套的方法来进行编程,这种方法我觉得也行但是我比较喜欢简洁一点的,我感觉这位同学的代码太过于复杂,而且循环这个东西对我来说我可能也没学好,不能向这位同学一样,反复循环这么多次而不被绕晕。

自己代码截图

在这里插入图片描述
这个题目我觉得可能没有人会贴在csdn上,而且现在交的人比较少,找不到可以对比的,我主要是不懂return后面的返回值什么时候该用什么我一直觉得return后面只能接0,但是这个题目我感觉好奇怪

3学习总结
3.1学习进度条

在这里插入图片描述

3.2 累计代码行和博客字数

在这里插入图片描述

3.3.1 学习感悟

怎么说呢,C语言已经进入了一个新的学习了,我们学习了指针,但是我还是有点搞不明白这个指针,有的时候这个指针的指向让我很是疑惑,而且它有的时候代表的又是地址有的时候代表的又不是地址,这个搞得我好难受,但是最要命的还不是这个,而是那个数组指针,和什么指针数组,我做梦都没有想到这两个东西还可以合起来用的,我连这个基本的概念其实都还没有好明白,但是这个还是简单,去看书就可以明白了,但是这个两个用法我就更不会了,看上去是一样的用,但是好多时候用的方法其实有不一样,这个东西搞得我很是难过,有时候一个编程题我想看懂这个编程却发现我就是被这个指针给我卡住了,以至于我读程序读到一半的时候我就会发现我更本读不下去了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值