这个作业要求在哪里 | 掌握二维数组 |
我在这个课程的目标是 | 学习使用二维数组 |
这个作业在那个具体方面帮助我实现目标 | 如何定义并调用一个二维数组 |
参考文献 | C语言程序设计教程第三版,百度 |
1.PTA实验作业
1.1 找出矩阵中最小值所在的位置
将1个m x n的矩阵存入1个m x n的二维数组中,找出最小值以及它的行下标和列下标,并输出该矩阵。
1.1.1 数据处理
1.数据表达:定义m,n以确定矩阵大小;定义i,j用以实现循环结构输入数据与对比大小;定义min,x,y分别保存最小值以及其行与列。
2.数据处理
1.1.2 实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 |
---|---|
1 1/n 6 | min = a[0][0] = 6 |
0 1/n 8 | min = a[0][0] = 6487464 |
说明:
1.第一组正常输入正常输入符合要求。
2.第二组输入不符合要求输出随机数。
1.1.4 PTA提交列表及说明
1.错误原因:忘记给x,y赋初始值导致x输出错误。
2.解决措施:询问C语言前辈得知这种情况x,y必须赋初始值才能用。
1.2 短号
在某年的校程序设计竞赛中,报名参赛的同学很多都只留了短号,这让通知获奖同学来取获奖证书的H老师很是困扰,因为他没有短号!痛定思痛,H老师也要办短号了。这里约定短号为手机号码的最后六位,但如果取出的最后六位是以0开头的,要改为以9开头。现给出H老师手机号码,请确定他的短号。
1.2.1 数据处理
1.数据表达:定义整形数据n保存测试组数;定义i,j,k用于循环结构。
2.数据处理:
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 |
---|---|
2\n 11111111111 00000000000 | 111111 90000 |
说明:正常输入正常输出。
1.2.4 提交列表及说明
错误原因:用整形数组输入导致结果不对
解决办法:第二天听老师讲解得知应该用字符串来解决此类问题。
2.代码互评
刘毅同学的代码
我的代码
代码分析:
1.刘毅同学没有分情况没有考虑到w-z和W-Z这种特殊情况
2.刘毅同学最后输出加了一个换行我认为没有必要
颜建辉同学的代码
我的代码
代码分析
1.颜建辉同学限制了数字大小为4d,要求更严谨一些。
2,颜建辉同学直接定义了一个数量有限的数组[100][100]限制了数组大小,我习惯性按需分配定义了一个a[m][n]。
3 学习总结
3.1 学习进度条
周/日期 | 所花时间 | 代码行 | 学到的知识点简介 | 目前比较困惑的问题 |
---|---|---|---|---|
第一周 | 12h | 68 | 进制转换,输入输出 | 暂无 |
第二周 | 10h | 80 | C语言的基本结构,数据类型及其长度,if-else if选择结构 | 暂无 |
第三周 | 16h | 120 | 基本数据类型,运算符和表达式 | 暂无 |
第四周 | 20h | 150 | do-while语句,while语句,break与continue的作用 | 各种结构容易混乱,记忆不够深刻 |
第五周 | 14h | 200 | 数组 | 暂无 |
第六周 | 19h | 190 | 二维数组与字符串 | 字符串了解不透彻 |
3.2 累积代码行和博客字数
3.3 学习内容总结与感悟
3.3.1 学习内容总结
3.3.2 学习体会
突然发现自己有点本末倒置了,遇到不会做的一直在百度,哔哩哔哩寻求他人帮助而忘了去翻书寻找答案,太过于依赖他人。而忘记自己去书本上寻求答案。其实有许多东西书本上都有答案。第一次开放第9次课课后练习时我没翻书感觉每道题都好难,后来老师上课后才发现有许多书本上都有,尤其是选择题,大多数都是理论知识。