C语言程序设计博客作业06

这个作业要求在哪里https://bbs.csdn.net/topics/610882618
我在这个课程的目标是了解变量、内存单元和地址之间的关系、指针变量的基本运算、使用指针操作所事项的变量,指针作为函数参数的作用是什么,以及如何使用指针实现函数调用返回多个值、如何利用指针实现内存的动态分配、指针数组和指向指针的指针是如何被定义和使用的
这个作业在那个具体方面帮助我实现目标本次作业帮助我理解数组指针的使用。使用数组指针能够解决一些其它方式不能解决的问题
参考文献CSDN博主的代码 C语言书 问老师

1.PTA实验作业

在这里插入图片描述

1.1 题目名1

分析下面代码,理解二级指针。

#include<stdio.h>
int main(){
int n,*p,**pp;
n=10; p=&n; pp=&p;
printf(“n=%d,n=%d,n=%d\n”,n,*p,**pp);
printf(“%x,%x,%x\n”,&n,&p,&pp);
printf(“%x,%x\n”,&n,p);
printf(“%x,%x\n”,&p,pp);
return 0;
}
执行程序,输出:
n=10,n=10,n=10
28febc,28feb8,28feb4(此部分输出可能不同)
28febc,28febc
28feb8,28feb8

1.1.1数据处理

数据表达:该代码定义了n,*p,**pp,这些变量的值是根据题目中代码进行定义的,类型是整型。
数据处理:
在这里插入图片描述

1.1.2实验代码截图

在这里插入图片描述

1.1.3 造测试数据

输入数据:
输出数据:0

1.1.4 PTA提交列表及说明

在这里插入图片描述
在这里插入图片描述

1.2 题目2

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

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

Sunday Monday Tuesday Wednesday Thursday Friday Saturday

输入输出示例:括号内为说明,无需输入输出

1.2.1 数据处理

数据表达:定义了repeat,index=0,数组指针*a[7],以及字符串数组b[100],这些变量的值是根据题目要求定义的相关变量。类型是整型,数组指针,字符串数组。
数据处理:
在这里插入图片描述

1.2.2 实验代码截图

在这里插入图片描述

1.2.3 造测试数据

输入数据1:Tuesday
输入数据2:Wednesday
输入数据3:year

输出数据1:3
输出数据2:4
输出数据3:-1

1.2.4 PTA提交列表及说明

在这里插入图片描述

2.代码互评

同学代码截图
7.6
(1)
在这里插入图片描述

(2)
在这里插入图片描述

7.8
(1)在这里插入图片描述

(2)在这里插入图片描述

自己代码截图
7.6
在这里插入图片描述

7.8
在这里插入图片描述
7.6
两位同学代码的比较:
两位同学代码只有定义的n的值不同,第一位同学的为0,第二位同学的为10,但最终对代码的结果都没有影响。

我与两位同学代码的比较:
我与两位同学的代码几乎没有太大的区别,但按照PTA上的题目要求输出0,所以直接打印0.但是我觉得这个代码,是不是太简单了,更简洁的方法是直接打印0,省去前面部分。
7.8
两位同学代码的比较:
(1)第一位同学的代码开始定义了一个二维数组,第二位同学定义的是一维数组,第一位同学的二维数组显得有点多余。
(2)两位同学定义的字符串数组范围大小不同,但对程序并没有不好的影响。
(3)第一位同学的strcmp是直接为0的,而第二位同学使用了中间变量flag。
我与两位同学代码的比较:
(1)第一位同学的代码前面部分与我的相差不大,但是她的第22行代码只包含了j为7的情况,没有考虑7以后的情况出现。
(2)第二位同学第18、19行代码格式不太规范。

3.学习总结

3.1 学习进度条
知识点还存在的问题
第五周C语言基本知识
第六周c语言程序的基本结构
第七周数据类型和运算符优先级还不太理解
第八周顺序结构与选择结构,循环结构
第九周数组的定义,一维数组的使用
第十周二维数组的使用数组的输出还不太清楚
第十一周函数函数定义的类型还不太会
第十二周指针与指针变量的概念
第十三周指针变量的定义与引用
第十四周指针与地址运算概念还是不太清楚
第十五周数组指针使用数组指针的意义还不太理解
3.2 累积代码行和博客字数

在这里插入图片描述

3.3 学习内容总结和感悟
3.3.1 学习内容总结

在这里插入图片描述

3.3.2 学习体会

1.对本节课的数组指针的定义还是有许多地方不太会运用,可能是对它的理解还不太深,后续我需要进一步对其进行理解。当然还是因为我没有养成提前预习的习惯,所以导致我在听课时,对问题不太理解。
2.经过将近10周的学习,虽然对C语言的理解还不太深,但是,不管新知识如何增加,它都是基于前面所学的知识进行升华的。虽然我现在的基础还是太差,但功夫定不会负有心人的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值